On Fri, 2015-03-06 at 20:44 -0800, Davidlohr Bueso wrote:
> On Fri, 2015-03-06 at 20:31 -0800, Jason Low wrote:
> > On Fri, 2015-03-06 at 13:12 -0800, Jason Low wrote:
> > 
> > Just in case, here's the updated patch which addresses Linus's comments
> > and with a changelog.
> > 
> > Note: The changelog says that it fixes (locking/rwsem: Avoid deceiving
> > lock spinners), though I still haven't seen full confirmation that it
> > addresses all of the lockup reports.
> > 
> > ------
> > Subject: [PATCH] rwsem: Avoid spinning when owner is not running
> > 
> > Fixes tip commmit b3fd4f03ca0b (locking/rwsem: Avoid deceiving lock 
> > spinners).
> > 
> > When doing optimistic spinning in rwsem, threads should stop spinning when
> > the lock owner is not running. While a thread is spinning on owner, if
> > the owner reschedules, owner->on_cpu returns false and we stop spinning.
> > 
> > However, commit b3fd4f03ca0b essentially caused the check to get ignored
> > because when we break out of the spin loop due to !on_cpu, we continue
> > spinning if sem->owner != NULL.
> 
> I would mention the actual effects of the bug, either just a "lockup"
> and/or a fragment of the trace. 

Right, we should mention about the lockup in the changelog.

> > Cc: Ming Lei <ming....@canonical.com>
> > Cc: Davidlohr Bueso <d...@stgolabs.net>
> 
> Acked-by: Davidlohr Bueso <d...@stgolabs.net>

Thanks!

--
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