I finally worked out how to make abort() conforming when SIGABRT's disposition is under aggressive alteration by other threads, and it's gloriously simple. Especially if you've ever read the (utterly wrong) glibc monstrosity: https://sourceware.org/git/?p=glibc.git;a=blob;f=stdlib/abort.c;h=9bb97c10552223a65f2a423cb6d5ad184fad5438;hb=HEAD …
-
Show this thread
-
And here's the commit doing it: https://git.musl-libc.org/cgit/musl/commit/?id=9b14ad541068d4f7d0be9bcd1ff4c70090d868d3 …
1 reply 0 retweets 3 likesShow this thread -
Replying to @RichFelker
Is a conforming abort expected to interop with a sigaction from another libc? I’m wondering about LD_PRELOADing another sigaction provider. Their sigaction obviously won’t take your lock. Maybe you’re on your own when you start glueing different libc impls together, idk.
1 reply 0 retweets 0 likes -
Replying to @RichFelker @wattsamata
If it's just a wrapper it will probably work, but if you're actually replacing there's no way you can expect things like this to work. Consider an example like replacing fopen.
8:04 AM - 2 Sep 2018
0 replies
0 retweets
1 like
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.