Austin Group Defect Tracker

Aardvark Mark IV


Viewing Issue Simple Details Jump to Notes ] Issue History ] Print ]
ID Category Severity Type Date Submitted Last Update
0001324 [1003.1(2016/18)/Issue7+TC2] System Interfaces Objection Clarification Requested 2020-02-07 15:57 2020-10-17 05:29
Reporter elahav View Status public  
Assigned To
Priority normal Resolution Open  
Status New  
Name Elad Lahav
Organization QNX Software Systems
User Reference
Section sem_open()
Page Number 1854
Line Number 60011
Interp Status ---
Final Accepted Text
Summary 0001324: sem_open() should not require the same name to map to the same virtual address
Description The current specification mandates that two calls to sem_open() with the same name made by the same process return the same virtual address, so long as no process called sem_unlink() in between the two calls.
I believe that this is an unreasonable requirement, for the following reasons:
1. There is no dependency by any other sem_*() function on this requirement. So long as the two sem_t pointers returned by the calls refer to the same underlying semaphore all sem_*() functions will behave correctly when passed these pointers.
2. It puts an unnecessary burden on the system to track virtual address usage by the calling process. The system should only need to track the association of any given sem_t pointer to the underlying object. If, for example, the sem_t pointer holds a file descriptor to an open semaphore, then the system only needs to track the file descriptor.
3. Since sem_close() is documented as releasing all resources for the semaphore and making the pointer invalid for future use, the requirement promotes an unsafe "open twice, close once" paradigm.
4. The requirement deviates from the standard approach to resource allocation, where multiple calls provide different handles, even if those handles refer to the same object (e.g., open(), shm_open(), mmap() with the same file descriptor and offset)
5. The requirement may conflict with the following future direction: "A future version might require the sem_open() and sem_unlink() functions to have semantics similar to normal file system operations."
Desired Action Make the requirement optional
Tags No tags attached.
Attached Files

- Relationships

-  Notes
(0005054)
agadmin (administrator)
2020-10-17 05:29

This was discussed during the 2020-10-12 teleconference. We agree that this is a defect, but we need suggested wording. sem_close() would need to be updated as well. We want to catch up on our backlog of reported bugs, and crafting wording will bog us down a bit, so for now we're moving on to another bug. We will return to this once someone has proposed wording, or if we catch up on all the other bugs and have time to come up with wording during the telecon.

- Issue History
Date Modified Username Field Change
2020-02-07 15:57 elahav New Issue
2020-02-07 15:57 elahav Name => Elad Lahav
2020-02-07 15:57 elahav Organization => QNX Software Systems
2020-02-07 15:57 elahav Section => sem_open()
2020-02-07 15:57 elahav Page Number => (page or range of pages)
2020-02-07 15:57 elahav Line Number => (Line or range of lines)
2020-02-07 19:14 elahav Issue Monitored: elahav
2020-10-12 15:41 nick Page Number (page or range of pages) => 1854
2020-10-12 15:41 nick Line Number (Line or range of lines) => 60011
2020-10-12 15:41 nick Interp Status => ---
2020-10-17 05:29 agadmin Note Added: 0005054


Mantis 1.1.6[^]
Copyright © 2000 - 2008 Mantis Group
Powered by Mantis Bugtracker