DESC
Unbelievable but true: the server never really locked the object when
acquiring it due to being in a waitqueue, so two users could be told
simultaneously that they acquired it.
EDESC

Well, I'm really stupid, I can't believe how I never noticed this. On the
waking up path, we never marked the object locked! So we returned true to the
one in the waitqueue (but don't really grant him the lock), and also to the
next one, and so on.

I'm ashamed.

Thanks to Ron Burkey for reporting this embarrasing bug.

