> According to the standard, a "normal" ... mutex is required to deadlock
> if the owner of the lock attempts to re-lock it while already holding the
> lock. However, if the lock in question is elided, this required deadlock
> does not occur. It is certainly debatable whether or not avoiding a
> deadlock is really a bad thing (after all, deadlocks are bugs), but the
> glibc project decided to follow the standard to the letter, and elide
> only non-"normal" mutexes.
I don't follow this at all. If the lock is elided then it was never held in the first place, so why would not deadlocking violate POSIX?