View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0000532 | 1003.1(2008)/Issue 7 | System Interfaces | public | 2012-01-02 22:41 | 2019-06-10 08:55 |
| Reporter | weeks | Assigned To | ajosey | ||
| Priority | normal | Severity | Editorial | Type | Clarification Requested |
| Status | Closed | Resolution | Accepted As Marked | ||
| Name | Nathan Weeks | ||||
| Organization | Iowa State University HPC Group | ||||
| User Reference | |||||
| Section | semctl | ||||
| Page Number | 1833 | ||||
| Line Number | 58506 | ||||
| Interp Status | --- | ||||
| Final Accepted Text | 0000532:0001090 | ||||
| Summary | 0000532: clarify atomicity of semctl() | ||||
| Description | It would be helpful to clarify the atomicity of semctl() commands, especially SETALL; e.g., in the unlikely case of concurrent SETALL operations, or in the more likely case when a process is blocked in a semop(), and the values of the semaphores in the set are altered by a call to semctl() in another process. For example, if a semaphore set comprises two semaphores with values {0, 0}, and a process is blocked in a call to semop() with sem_ops {-1, 0}, it would ideally not be possible for this semop() to complete during a call to semctl(...,SETALL,...) in another process with arg.array values of {1, 1}. Regarding existing practice, the Linux semctl() manual page contains the following wording, which seems to imply issuing a SETALL or SETVAL command when there are pending semop() operations is safe on Linux: "...If the changes to semaphore values would permit blocked semop(2) calls in other processes to proceed, then those processes are woken up." | ||||
| Desired Action | Clarify the atomicity requirements for semctl(). | ||||
| Tags | tc2-2008 | ||||
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2012-01-02 22:41 | weeks | New Issue | |
| 2012-01-02 22:41 | weeks | Status | New => Under Review |
| 2012-01-02 22:41 | weeks | Assigned To | => ajosey |
| 2012-01-02 22:41 | weeks | Name | => Nathan Weeks |
| 2012-01-02 22:41 | weeks | Organization | => Iowa State University HPC Group |
| 2012-01-02 22:41 | weeks | Section | => semctl |
| 2012-01-02 22:41 | weeks | Page Number | => 0 |
| 2012-01-02 22:41 | weeks | Line Number | => 0 |
| 2012-01-12 16:49 | msbrown | Page Number | 0 => 1833 |
| 2012-01-12 16:49 | msbrown | Interp Status | => --- |
| 2012-01-12 16:49 | msbrown | Note Added: 0001090 | |
| 2012-01-12 16:49 | msbrown | Status | Under Review => Resolution Proposed |
| 2012-01-12 16:49 | msbrown | Resolution | Open => Accepted As Marked |
| 2012-01-12 16:49 | msbrown | Tag Attached: tc2-2008 | |
| 2012-01-12 16:50 | msbrown | Line Number | 0 => 58506 |
| 2012-01-12 16:50 | msbrown | Final Accepted Text | => 0000532:0001090 |
| 2012-01-13 09:20 | geoffclare | Status | Resolution Proposed => Resolved |
| 2019-06-10 08:55 | agadmin | Status | Resolved => Closed |