6年ぐらい前に、execle, execlp が man では async-signal-safe にリストされてるけど間違ってるよという
チケットを切ったんだけど、ずっと放置されてて
https://bugzilla.kernel.org/show_bug.cgi?id=25292
6年後に対応してもらえましたよ。実装がなおったんだよね。
glibc 2.24 からexec系 syscall がまともになりました。
https://sourceware.org/bugzilla/show_bug.cgi?id=19534
みんな、Adhemerval Zanella に感謝しよう。
これ結構ひどくて、multi thread で forkした場合は以降は async-signal-safe しか呼んではいけないので
exec呼んだらデッドロックリスクがある(かつmanには書いてない)という、たいそう罠な仕様だったのさ。
アーメン
チケットを切ったんだけど、ずっと放置されてて
https://bugzilla.kernel.org/show_bug.cgi?id=25292
6年後に対応してもらえましたよ。実装がなおったんだよね。
glibc 2.24 からexec系 syscall がまともになりました。
https://sourceware.org/bugzilla/show_bug.cgi?id=19534
みんな、Adhemerval Zanella に感謝しよう。
これ結構ひどくて、multi thread で forkした場合は以降は async-signal-safe しか呼んではいけないので
exec呼んだらデッドロックリスクがある(かつmanには書いてない)という、たいそう罠な仕様だったのさ。
アーメン