Btw, that comment is bogus, ignore it. It comes from an earlier algorithm
I tried that also explained the contention case, but got unnecessarily
complex. Separating out the queuing behaviour from the actual
non-contended behaviour made things much simpler to explain, so I stopped
even bothering with a "both" case.
Too much cut-and-paste, IOW.
Linus
--