Re: [tip:sched/core] sched: 'Annotate' migrate_tasks()

From: Peter Zijlstra
Date: Tue Sep 15 2015 - 03:57:55 EST


On Mon, Sep 14, 2015 at 04:58:21PM -0700, Linus Torvalds wrote:
> On Sun, Sep 13, 2015 at 3:56 AM, tip-bot for Wanpeng Li
> <tipbot@xxxxxxxxx> wrote:
> > + lockdep_unpin_lock(&rq->lock);
> > + raw_spin_unlock(&rq->lock);
> > + raw_spin_lock(&next->pi_lock);
> > + raw_spin_lock(&rq->lock);
>
> So _if_ this is ever likely to be a performance-critical piece of
> code, it might be worth doing
>
> if (!raw_spin_trylock(&next->pi_lock)) {
> .. do the above unlock and relock in the right order sequence ..
> }
>
> to avoid doing that whole "unlock just to relock in the right order" thing.
>
> That's particularly true in cases where dropping one of the locks can
> necessitate re-doing some checks.

Correct, but this is the hot-unplug, migrate the few tasks that are now
on a dead CPU away path, so meh ;-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/