Messages in this thread | | | Date | Wed, 26 May 2021 17:35:25 +0100 | From | Will Deacon <> | Subject | Re: [PATCH v7 13/22] sched: Allow task CPU affinity to be restricted on asymmetric systems |
| |
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: > > +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
| |