Back to bug 2177235

Who When What Removed Added
Red Hat Bugzilla 2023-03-10 14:17:32 UTC Pool ID sst_pt_gcc_glibc_rhel_9
RHEL Program Management 2023-03-10 14:17:40 UTC Keywords Triaged
Red Hat One Jira (issues.redhat.com) 2023-03-10 14:18:49 UTC Link ID Red Hat Issue Tracker RHELPLAN-151441
Florian Weimer 2023-03-10 14:20:30 UTC Blocks 2176707
Depends On 2176707
Florian Weimer 2023-03-10 14:39:05 UTC Link ID Sourceware 30163
Carlos O'Donell 2023-03-20 16:17:20 UTC CC cperl
Keywords Patch
Mark O'Brien 2023-04-20 11:14:01 UTC Pool ID sst_pt_glibc_rhel_9 sst_pt_libraries_rhel_9
Mark O'Brien 2023-04-20 11:15:08 UTC Pool ID sst_pt_libraries_rhel_9 sst_pt_libraries_rhel_8
Mark O'Brien 2023-04-20 13:09:41 UTC Pool ID sst_pt_libraries_rhel_8 sst_pt_libraries_rhel_9
CC markobri
Arjun Shankar 2023-04-21 13:56:25 UTC Blocks 2188641
Carlos O'Donell 2023-04-28 13:43:13 UTC Keywords Bugfix
Sergey Kolosov 2023-04-28 19:10:18 UTC CC skolosov
QA Contact qe-baseos-tools-bugs skolosov
Florian Weimer 2023-04-28 22:25:21 UTC Fixed In Version glibc-2.34-67.el9
Status NEW MODIFIED
Carlos O'Donell 2023-05-01 15:39:21 UTC Doc Type If docs needed, set a value Bug Fix
Assignee glibc-bugzilla fweimer
Flags needinfo?(fweimer)
Florian Weimer 2023-05-02 07:29:05 UTC Flags needinfo?(fweimer)
Doc Text Cause: If the glibc system() function is called concurrently from multiple threads, the signal mask for SIGCHLD may not be restored correctly.

Consequence: SIGCHLD may remain blocked after the return from the system() function on some threads.

Fix: system() now restores the previous signal mask unconditionally, even when parallel system() calls are running.

Result: SIGCHLD is no longer incorrectly blocked if system() is invoked concurrently from multiple threads.
errata-xmlrpc 2023-05-10 11:17:00 UTC Status MODIFIED ON_QA
Sergey Kolosov 2023-05-19 13:40:14 UTC Status ON_QA VERIFIED
Jacob Taylor Valdez 2023-06-20 08:22:47 UTC CC jvaldez
Flags needinfo?(fweimer)
Doc Text Cause: If the glibc system() function is called concurrently from multiple threads, the signal mask for SIGCHLD may not be restored correctly.

Consequence: SIGCHLD may remain blocked after the return from the system() function on some threads.

Fix: system() now restores the previous signal mask unconditionally, even when parallel system() calls are running.

Result: SIGCHLD is no longer incorrectly blocked if system() is invoked concurrently from multiple threads.
.The `glibc` `system()` function now restore the previous signal mask unconditionally

Previously, if the `glibc` `system()` function was called concurrently from multiple threads, the signal mask for the `SIGCHLD` signal might not be restored correctly. As a consequence, the `SIGCHLD` signal remained blocked after the return from the `glibc` `system()` function on some threads.

With this update, the `glibc` `system()` function now restores the previous signal mask unconditionally, even when parallel `system()` function calls are running. As a result, the `SIGCHLD` signal is no longer incorrectly blocked if the `glibc` `system()` function is called concurrently from multiple threads.
Docs Contact jvaldez
Florian Weimer 2023-06-20 08:25:05 UTC Flags needinfo?(fweimer)
Carlos O'Donell 2023-07-09 12:57:33 UTC CC mnewsome
Jacob Taylor Valdez 2023-07-31 10:27:54 UTC Doc Text .The `glibc` `system()` function now restore the previous signal mask unconditionally

Previously, if the `glibc` `system()` function was called concurrently from multiple threads, the signal mask for the `SIGCHLD` signal might not be restored correctly. As a consequence, the `SIGCHLD` signal remained blocked after the return from the `glibc` `system()` function on some threads.

With this update, the `glibc` `system()` function now restores the previous signal mask unconditionally, even when parallel `system()` function calls are running. As a result, the `SIGCHLD` signal is no longer incorrectly blocked if the `glibc` `system()` function is called concurrently from multiple threads.
.The `glibc` `system()` function now restores the previous signal mask unconditionally

Previously, if the `glibc` `system()` function was called concurrently from multiple threads, the signal mask for the `SIGCHLD` signal might not be restored correctly. As a consequence, the `SIGCHLD` signal remained blocked after the return from the `glibc` `system()` function on some threads.

With this update, the `glibc` `system()` function now restores the previous signal mask unconditionally, even when parallel `system()` function calls are running. As a result, the `SIGCHLD` signal is no longer incorrectly blocked if the `glibc` `system()` function is called concurrently from multiple threads.

Back to bug 2177235