Re: [patch V2 08/15] Documentation: Add lock ordering and nesting documentation

From: Thomas Gleixner
Date: Sat Mar 21 2020 - 06:26:57 EST


"Paul E. McKenney" <paulmck@xxxxxxxxxx> writes:
> On Fri, Mar 20, 2020 at 11:36:03PM +0100, Thomas Gleixner wrote:
>> I agree that what I tried to express is hard to parse, but it's at least
>> halfways correct :)
>
> Apologies! That is what I get for not looking it up in the source. :-/
>
> OK, so I am stupid enough not only to get it wrong, but also to try again:
>
> ... Other types of wakeups would normally unconditionally set the
> task state to RUNNING, but that does not work here because the task
> must remain blocked until the lock becomes available. Therefore,
> when a non-lock wakeup attempts to awaken a task blocked waiting
> for a spinlock, it instead sets the saved state to RUNNING. Then,
> when the lock acquisition completes, the lock wakeup sets the task
> state to the saved state, in this case setting it to RUNNING.
>
> Is that better?

Definitely!

Thanks for all the editorial work!

tglx