Re: [PATCH 04/12] bcache: Don't reinvent the wheel but use existing llist API

Michael Lyle
2017-09-26T04:38:09Z

I believe this introduces a critical bug.

cl->list is used to link together the llists for both things waiting,
and for things that are being woken.

If a closure that is woken decides to wait again, it will corrupt the
llist that __closure_wake_up is using.

The previous iteration structure gets the next element of the list
before waking and is therefore safe.

Mike