Anonymous | Login | 2024-03-29 11:56 UTC |
Main | My View | View Issues | Change Log | Docs |
Viewing Issue Simple Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||
ID | Category | Severity | Type | Date Submitted | Last Update | ||
0000532 | [1003.1(2008)/Issue 7] System Interfaces | Editorial | Clarification Requested | 2012-01-02 22:41 | 2019-06-10 08:55 | ||
Reporter | weeks | View Status | public | ||||
Assigned To | ajosey | ||||||
Priority | normal | Resolution | Accepted As Marked | ||||
Status | Closed | ||||||
Name | Nathan Weeks | ||||||
Organization | Iowa State University HPC Group | ||||||
User Reference | |||||||
Section | semctl | ||||||
Page Number | 1833 | ||||||
Line Number | 58506 | ||||||
Interp Status | --- | ||||||
Final Accepted Text | Note: 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 | ||||||
Attached Files | |||||||
|
Notes | |
(0001090) msbrown (manager) 2012-01-12 16:49 |
Add the following new paragraph after the line 58506: Each operation shall be performed atomically. |
Issue History | |||
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 | => Note: 0001090 |
2012-01-13 09:20 | geoffclare | Status | Resolution Proposed => Resolved |
2019-06-10 08:55 | agadmin | Status | Resolved => Closed |
Mantis 1.1.6[^] Copyright © 2000 - 2008 Mantis Group |