On Tue 14-11-23 10:50:51, Gregory Price wrote: > On Tue, Nov 14, 2023 at 10:43:13AM +0100, Michal Hocko wrote: [...] > > That being said, I still believe that a cgroup based interface is a much > > better choice over a global one. Cpusets seem to be a good fit as the > > controller does control memory placement wrt NUMA interfaces. > > I think cpusets is a non-starter due to the global spinlock required when > reading informaiton from it: > > https://elixir.bootlin.com/linux/latest/source/kernel/cgroup/cpuset.c#L391 Right, our current cpuset implementation indeed requires callback lock from the page allocator. But that is an implementation detail. I do not remember bug reports about the lock being a bottle neck though. If anything cpusets lock optimizations would be win also for users who do not want to use weighted interleave interface. -- Michal Hocko SUSE Labs