On Fri, Dec 12, 2014 at 10:50:19AM +0100, Florian Weimer wrote:
On 12/11/2014 03:11 PM, OndÅej BÃlka wrote:
Yes, I wrote that from head so I forgot volatile/asm barrier. One could
add requirement like needs to be compiled by gcc4-6+ instead pure C as
just using signals is not part of C standard.
GCC emulates atomics with locks on some platforms, or some lock-free
instruction sequences may not be reentrant. This begins to look
like a can of worms, unfortunately.
It uses only thread local variable. If they are not reentrant its
gigantic hole, you could not for example use sigaction as it could
set errno which is thread local variable.