A NOTE has been added to this issue. 
====================================================================== 
http://austingroupbugs.net/view.php?id=1112 
====================================================================== 
Reported By:                torvald
Assigned To:                
====================================================================== 
Project:                    1003.1(2016)/Issue7+TC2
Issue ID:                   1112
Category:                   Base Definitions and Headers
Type:                       Clarification Requested
Severity:                   Comment
Priority:                   normal
Status:                     New
Name:                       Torvald Riegel 
Organization:               Red Hat 
User Reference:              
Section:                    fork 
Page Number:                898 
Line Number:                30327 
Interp Status:              --- 
Final Accepted Text:         
====================================================================== 
Date Submitted:             2017-01-05 20:03 UTC
Last Modified:              2018-06-28 16:15 UTC
====================================================================== 
Summary:                    mutex/rwlock ownership after fork is unclear
====================================================================== 

---------------------------------------------------------------------- 
 (0004047) geoffclare (manager) - 2018-06-28 16:15
 http://austingroupbugs.net/view.php?id=1112#c4047 
---------------------------------------------------------------------- 
On page 898 line 30327 section fork() change:
Consequently, to avoid errors, the child process may only execute
async-signal-safe operations until such time as one of the <i>exec</i>
functions is called.
to:
Consequently, the application shall ensure that the child process only
executes async-signal-safe operations until such time as one of the
<i>exec</i> functions is successful.

After line 30332 add a new bullet item:

* Any locks held by any thread in the calling process that have been set to
be process-shared shall not be held by the child process. For locks held by
any thread in the calling process that have not been set to be
process-shared, any attempt by the child process to perform any operation
on the lock results in undefined behavior (regardless of whether the
calling process is single-threaded or multi-threaded). 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2017-01-05 20:03 torvald        New Issue                                    
2017-01-05 20:03 torvald        Name                      => Torvald Riegel  
2017-01-05 20:03 torvald        Organization              => Red Hat         
2017-01-05 20:03 torvald        Section                   => (section number or
name, can be interface name)
2017-01-05 20:03 torvald        Page Number               => (page or range of
pages)
2017-01-05 20:03 torvald        Line Number               => (Line or range of
lines)
2017-01-06 09:55 geoffclare     Note Added: 0003537                          
2017-01-06 09:55 geoffclare     Project                  1003.1(2013)/Issue7+TC1
=> 1003.1(2016)/Issue7+TC2
2017-01-06 09:57 geoffclare     Note Edited: 0003537                         
2017-01-06 09:59 geoffclare     Section                  (section number or
name, can be interface name) => fork
2017-01-06 09:59 geoffclare     Page Number              (page or range of
pages) => 898
2017-01-06 09:59 geoffclare     Line Number              (Line or range of
lines) => 30327
2017-01-06 09:59 geoffclare     Interp Status             => ---             
2017-01-07 09:06 Florian Weimer Issue Monitored: Florian Weimer                 
  
2017-01-07 09:09 Florian Weimer Note Added: 0003539                          
2018-06-28 16:15 geoffclare     Note Added: 0004047                          
======================================================================


Reply via email to