cpuset: Don't use the cpu_possible_mask as a last resort for cgroup v1
authorWill Deacon <will@kernel.org>
Fri, 30 Jul 2021 11:24:29 +0000 (12:24 +0100)
committerPeter Zijlstra <peterz@infradead.org>
Fri, 20 Aug 2021 10:32:58 +0000 (12:32 +0200)
commitd4b96fb92ae7fe7533e11e662504d96161928575
tree74fc95552e234a0d56e281fab055c865b0a62b8f
parent9ae606bc74dd0e58d4de894e3c5cbb9d45599267
cpuset: Don't use the cpu_possible_mask as a last resort for cgroup v1

If the scheduler cannot find an allowed CPU for a task,
cpuset_cpus_allowed_fallback() will widen the affinity to cpu_possible_mask
if cgroup v1 is in use.

In preparation for allowing architectures to provide their own fallback
mask, just return early if we're either using cgroup v1 or we're using
cgroup v2 with a mask that contains invalid CPUs. This will allow
select_fallback_rq() to figure out the mask by itself.

Signed-off-by: Will Deacon <will@kernel.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Reviewed-by: Valentin Schneider <valentin.schneider@arm.com>
Reviewed-by: Quentin Perret <qperret@google.com>
Link: https://lkml.kernel.org/r/20210730112443.23245-3-will@kernel.org
include/linux/cpuset.h
kernel/cgroup/cpuset.c