&gt; you&#x27;d have to lock the mutex every time anyway<p>I don&#x27;t understand. Could you explain this in more detail?<p>In Linux, adaptive mutexes are implemented entirely in userspace with futex as the primitive syscall. This is because atomic CAS (cmpxchg, ldrex&#x2F;strex, etc) suffices to ensure synchronization during the spinning.