On Mon, 27 Jun 2016, Peter Zijlstra wrote:

> On Wed, Jun 15, 2016 at 08:25:07AM +0100, Juri Lelli wrote:
> > I guess it's not that likely, but yes it could potentially happen that a
> > waiter is optimistically spinning, depletes its runtime, gets throttled
> > and then replenished when still spinning. Maybe it doesn't really make
> > sense continuing spinning in this situation, but I guess things get
> > really complicated. :-/
> > 
> > Anyway, as said, I think this patch is OK. Maybe we want to add a
> > comment just to remember what situation can cause an issue if we don't
> > do this? Patch changelog would be OK as well for such a comment IMHO.
> 
> 
> OK, so I went to write a simple comment and ended up with the below :/
> 
> While writing the comment I noticed two issues:
> 
>  - we update the waiter order fields while the entry is still enqueued
>    on the pi_waiters tree, which is also sorted by these exact fields.
> 
>  - another one of these pure ->prio comparisons
> 
> Please double check, there be dragons here.

Reviewed-by: Thomas Gleixner <t...@linutronix.de>

Reply via email to