View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000966 | 1003.1(2013)/Issue7+TC1 | System Interfaces | public | 2015-06-29 13:19 | 2019-06-10 08:54 |
Reporter | gian | Assigned To | |||
Priority | normal | Severity | Editorial | Type | Error |
Status | Closed | Resolution | Accepted As Marked | ||
Name | Gian Ntzik | ||||
Organization | Imperial College London | ||||
User Reference | |||||
Section | XSH 2.9.7 write,read | ||||
Page Number | 1756, 2291 | ||||
Line Number | 56485-56490, 72619-72620 | ||||
Interp Status | --- | ||||
Final Accepted Text | 0000966:0002774 | ||||
Summary | 0000966: Atomicity requirements for read/write ambiguity | ||||
Description | XSH 2.97 states that the read and write interfaces are required to be atomic when operating on regular files. The RATIONALE section of read states: "I/O is intended to be atomic to ordinary files and pipes and FIFOs. Atomic means that all the bytes from a single operation that started out together end up together, without interleaving from other I/O operations." The RATIONALE section of write states: "This volume of POSIX.1-2008 does not specify behavior of concurrent writes to a file from multiple processes. Applications should use some form of concurrency control." The later statement introduces ambiguity wrt to the others. If write is required to be atomic for regular files, then this volume of POSIX.1-2008 does specify behavior for concurrent writes: they are atomic. Perhaps the intention is to make a statement about absence of specification for non-regular files, or to allow atomicity to be confined only to threads of the same process. | ||||
Desired Action | Make descriptions of concurrent interactions of read/write interfaces with respect to regular files consistent. Explicitly state any allowed deviations from atomicity. | ||||
Tags | tc2-2008 |
|
The standard does specify that reads and writes (up to certain size limitations) are atomic for regular files. But, if two processes (or two threads in a single process) both write to the same (or overlapping) regions of a file simultaneously, the standard does not specify which of those two atomic operations will complete first. |
|
On page 2291 line 72619, change from: This volume of POSIX.1-2008 does not specify behavior of concurrent writes to a file from multiple processes. to: This volume of POSIX.1-2008 does not specify the behavior of concurrent writes to a regular file from multiple threads, except that each write is atomic (see [xref to 2.9.7]). |
Date Modified | Username | Field | Change |
---|---|---|---|
2015-06-29 13:19 | gian | New Issue | |
2015-06-29 13:19 | gian | Name | => Gian Ntzik |
2015-06-29 13:19 | gian | Organization | => Imperial College London |
2015-06-29 13:19 | gian | Section | => XSH 2.9.7 write,read |
2015-07-15 19:16 | eblake | Interp Status | => --- |
2015-07-15 19:16 | eblake | Summary | Atomicity requirements for read/write ambigouity => Atomicity requirements for read/write ambiguity |
2015-07-16 19:54 | Don Cragun | Page Number | => 1756, 2291 |
2015-07-16 19:54 | Don Cragun | Line Number | => 56485-56490, 72619-72620 |
2015-07-16 19:54 | Don Cragun | Note Added: 0002766 | |
2015-07-23 16:28 | geoffclare | Note Added: 0002774 | |
2015-07-23 16:28 | geoffclare | Note Edited: 0002774 | |
2015-07-23 16:30 | geoffclare | Final Accepted Text | => 0000966:0002774 |
2015-07-23 16:30 | geoffclare | Status | New => Resolved |
2015-07-23 16:30 | geoffclare | Resolution | Open => Accepted As Marked |
2015-07-23 16:30 | geoffclare | Tag Attached: tc2-2008 | |
2019-06-10 08:54 | agadmin | Status | Resolved => Closed |