Adam Yi
436a604b7d
posix: Fix system blocks SIGCHLD erroneously [BZ #30163 ]
...
Fix bug that SIGCHLD is erroneously blocked forever in the following
scenario:
1. Thread A calls system but hasn't returned yet
2. Thread B calls another system but returns
SIGCHLD would be blocked forever in thread B after its system() returns,
even after the system() in thread A returns.
Although POSIX does not require, glibc system implementation aims to be
thread and cancellation safe. This bug was introduced in
5fb7fc96350575c9adb1316833e48ca11553be49 when we moved reverting signal
mask to happen when the last concurrently running system returns,
despite that signal mask is per thread. This commit reverts this logic
and adds a test.
Signed-off-by: Adam Yi <ayi@janestreet.com>
Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
2023-03-07 09:54:50 -03:00
..
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2017-12-20 16:55:26 -02:00
2023-01-06 21:14:39 +00:00
2023-02-06 16:16:19 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-02-20 09:32:43 -03:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-02-17 15:56:50 -03:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-02-16 23:02:40 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-02-20 09:32:43 -03:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-02-17 17:07:44 -03:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-02-16 23:02:40 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-02-16 23:02:40 +00:00
2023-02-16 23:02:40 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-02-16 23:02:40 +00:00
2023-02-16 23:02:40 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-02-16 23:02:40 +00:00
2023-02-16 23:02:40 +00:00
2023-02-16 23:02:40 +00:00
2023-01-06 21:14:39 +00:00
2023-02-16 23:02:40 +00:00
2023-02-16 23:02:40 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-02-20 09:32:43 -03:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2021-09-03 22:06:44 +05:30
2022-06-22 11:12:33 -07:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2021-09-03 22:06:44 +05:30
2023-01-06 21:14:39 +00:00
2022-03-31 09:13:14 -03:00
2023-01-06 21:14:39 +00:00
2021-09-03 22:06:44 +05:30
2022-01-24 11:00:23 +05:30
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2017-08-12 17:20:24 +02:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2020-06-30 23:04:06 +00:00
2020-06-30 23:04:06 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-02-16 23:02:40 +00:00
2023-02-16 23:02:40 +00:00
2023-02-16 23:02:40 +00:00
2023-02-16 23:02:40 +00:00
2023-02-16 23:02:40 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-03-07 09:54:50 -03:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-02-16 23:02:40 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00
2023-01-06 21:14:39 +00:00