On Wed, Jul 01, 2020 at 08:06:55PM +0100, Valentin Schneider wrote: > Leverage SD_DEGENERATE_GROUPS_MASK in sd_degenerate() and > sd_degenerate_parent(). > > Note that this changes sd_degenerate() somewhat: I'm using the negation of > SD_DEGENERATE_GROUPS_MASK as the mask of flags not requiring groups, which > is equivalent to: > > SD_WAKE_AFFINE | SD_SERIALIZE | SD_NUMA > > whereas the current mask for that is simply > > SD_WAKE_AFFINE > > I played with a few toy NUMA topologies on QEMU and couldn't cause a > different degeneration than what mainline does currently. If that is deemed > too risky, we can go back to using SD_WAKE_AFFINE explicitly.
Arguably SD_SERIALIZE needs groups, note how we're only having that effective for machines with at least 2 nodes. It's a bit shit how we end up there, but IIRC that's what it ends up as. SD_NUMA is descriptive, and not marking a group as degenerates because it has SD_NUMA seems a bit silly. But then, it would be the top domain and would survive anyway?

