News for hackers. Stuff that matters.
Re:Mutexes are faster than Spinlocks by asveikau on Saturday January 04, 2020 @10:11PM (#21959369)
Wouldn't that depend on the case? There is a nonzero amount of things in the universe for which volatile with no locking will do.

Although, any particular thing happening to be one of those is a pretty rare event, so odds are good that this wasn't one.

Re:Mutexes are faster than Spinlocks by legulere on Sunday January 05, 2020 @01:23AM (#21960014)
Volatile doesn’t even guarantee that data is written atomically in one step and not e.g. byte-wise. Also it allows both the compiler as well as the CPU to reorder it with any read or write. I can’t think of anything that would it could be used for in a multithreaded environment.
Re:Mutexes are faster than Spinlocks by ncmncm on Sunday January 05, 2020 @03:01AM (#21960228)
Right.

There is really only a single place volatile actually works, and that is for memory-mapped hardware registers. Anybody who says it is useful for anything else is badly mistaken.

Except in MSVC, where it kinda/sorta means atomic.

Re:Mutexes are faster than Spinlocks by rcxdude on Sunday January 05, 2020 @07:27AM (#21960990)
It allows the compiler to reorder it with any non-volatile read or write. Of course it still doesn't indicate anything to the CPU. In single-core embedded systems where the CPU doesn't reorder anything and you know the compiler is going to emit a single instruction for a read or write it can be sufficient (for example, this is how FreeRTOS implements all of its threading primitives)
Re:Mutexes are faster than Spinlocks by ncmncm on Saturday January 04, 2020 @10:31PM (#21959438)
This definitely wasn't one. It didn't bite in any obvious way because Intel, and because the system already had so many other bugs. (Free advice: don't take on a C++ program written by a Java coder.)