Re: [PATCH v7 08/22] cpuset: Don't use the cpu_possible_mask as a last resort for cgroup v1
From: Peter Zijlstra <peterz@infradead.org>
Date: 2021-05-26 15:02:48
Also in:
linux-arm-kernel, lkml
From: Peter Zijlstra <peterz@infradead.org>
Date: 2021-05-26 15:02:48
Also in:
linux-arm-kernel, lkml
On Tue, May 25, 2021 at 04:14:18PM +0100, Will Deacon wrote:
void cpuset_cpus_allowed_fallback(struct task_struct *tsk)
{
+ const struct cpumask *cs_mask;
+ const struct cpumask *possible_mask = task_cpu_possible_mask(tsk);
+
rcu_read_lock();
+ cs_mask = task_cs(tsk)->cpus_allowed;
+
+ if (!is_in_v2_mode() || !cpumask_subset(cs_mask, possible_mask))
+ goto unlock; /* select_fallback_rq will try harder */
+
+ do_set_cpus_allowed(tsk, cs_mask);
+unlock:if (is_in_v2_mode() && cpumask_subset(cs_mask, possible_mask)) do_set_cpus_allowed(tsk, cs_mask); perhaps?