On Thu, 6 Apr 2017, Peter Zijlstra wrote:
> On Thu, Apr 06, 2017 at 01:03:16PM +0200, Thomas Gleixner wrote:
> 
> > Fair enough, but I prefer to have the ability for a temporary restriction
> > of the user space visible cpus allowed mask in the core code, which can be
> > used for both migrate_disable() and things like that MIPS FPU stuff rather
> > than all those home brewn hackeries which are prone to bitrot, security
> > issues and subtle wreckage. cpus_allowed should be solely under sched core
> > control and not accessible from anything outside.
> 
> So the big difference between what MIPS does and what migrate_disable()
> needs here is the amount of storage.
> 
> For migrate_disable() we don't need a whole second cpumask bitmap. We
> can simply use one of the static cpumask_of() things.
> 
> Given that cpumask bitmaps can be quite large, adding another one to
> task_struct just for $very_rare_occasion, doesn't seem like a good
> thing.

A pointer to the effective mask is definitely enough. And that's what we
need for migrate_disable() as well. That still leaves the storage
requirement to MIPS.

Thanks,

        tglx


Reply via email to