On Fri, Jun 13, 2014 at 06:09:35PM +0200, Frederic Weisbecker wrote:
> On Fri, Jun 13, 2014 at 08:58:12AM -0700, Paul E. McKenney wrote:
> > > Maybe what we should do instead is to have something like this on RCU 
> > > kthread init:
> > > 
> > >           cpumask_var_t gp_kthread_mask;
> > > 
> > >           if (alloc_cpumask_var(gp_kthread_mask, GFP_KERNEL))
> > >               return -EFAULT;
> > > 
> > >           cpumask_andnot(gp_kthread_mask, cpu_possible_mask, 
> > > tick_nohz_full_mask);
> > > 
> > >     set_cpus_allowed_ptr(current, gp_kthread_mask);
> > > 
> > >     free_cpumask_var(gp_kthread_mask);
> > 
> > I was guessing that RCU's kthreads would not be the only ones that wanted
> > similar binding.  But if you feel strongly about this, we could at least
> > start by placing it local to RCU as above.
> 
> Hmm, I don't feel well creating mirrored cpumasks (nor solely negation 
> cpumasks in general).
> Also exposing that nohz gut is probably not a good idea either, except for 
> RCU due to
> the sysidle stuff.
> 
> Now you're right that we can expect that this non-nohz affinity stuff is 
> going to be reused.
> 
> Could it be housekeeping_affine(struct task_struct *tsk) maybe?

Now that you mention it, that does sound better.  I will do that.

                                                        Thanx, Paul

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to