Re: [PATCH v7 13/22] sched: Allow task CPU affinity to be restricted on asymmetric systems
From: Will Deacon <will@kernel.org>
Date: 2021-05-26 16:35:35
Also in:
linux-arm-kernel, lkml
From: Will Deacon <will@kernel.org>
Date: 2021-05-26 16:35:35
Also in:
linux-arm-kernel, lkml
On Wed, May 26, 2021 at 06:20:25PM +0200, Peter Zijlstra wrote:
On Tue, May 25, 2021 at 04:14:23PM +0100, Will Deacon wrote:quoted
+static int restrict_cpus_allowed_ptr(struct task_struct *p, + struct cpumask *new_mask, + const struct cpumask *subset_mask) +{ + struct rq_flags rf; + struct rq *rq; + int err; + struct cpumask *user_mask = NULL; + + if (!p->user_cpus_ptr) { + user_mask = kmalloc(cpumask_size(), GFP_KERNEL);if (!user_mask) return -ENOMEM; } ?
We won't blow up if we continue without user_mask here, but I agree that it's more straightforward to return an error and have force_compatible_cpus_allowed_ptr() noisily override the mask. We're in pretty deep trouble if we're failing this allocation anyway. Will