|Anonymous | Login||2019-07-15 22:06 UTC|
|Main | My View | View Issues | Change Log | Docs|
|Viewing Issue Simple Details|
|ID||Category||Severity||Type||Date Submitted||Last Update|
|0001240||[1003.1(2016)/Issue7+TC2] System Interfaces||Objection||Omission||2019-03-16 09:58||2019-06-24 15:39|
|Priority||normal||Resolution||Accepted As Marked|
|Final Accepted Text||Note: 0004450|
|Summary||0001240: shmctl(IPC_RMID) relationship with attached shared memory segments is not specified|
The standard specifies (lines 62573-5):
There is no mention, here or elsewhere, of the effects upon the
address space of a process which has performed a shmat( ) function
on the specified shared memory identifier.
Four possible solutions appear reasonable, though the second is
not currently known (by me) to have an existing implementation.
edited on: 2019-03-16 10:10
In choice 1, "that that process" should be "by that process"
In choice 3, <\i> should be < / i > (obviously...)
And mantis did a lousy job of formatting the text, the blockquotes
were entered as one long line, and have been formatted with that
line split in the middle of a word! Who would ever do that?
That applies to all of my recent 4 bug reports 0001237 0001238 0001239 and this one 0001240
The desired action has been updated to fix the problems (with this bug) noted in Note: 0004326.
The line breaks were in the submitted source text; we can speculate as to how they got there, but Mantis is not to blame for the way it was rendered.
I vote for 3.
Orginally, I tended to 1., as this gives the OS implementor the most freedom.
From an OS standpoint however, I think the IPC object needs to be reference-counted in any case, so garbage collection is appropriate.
More pertinently, the ipcrm utility states that:
> The shared memory segment and data structure associated with it shall be
> destroyed after the last detach.
This is consistent with alternative 3.
On page 1942 line 62573 section shmctl(), change:
Remove the shared memory identifier specified by shmid from the system and destroy the shared memory segment and shmid_ds data structure associated with it.to:
Remove the shared memory identifier specified by shmid from the system. The shared memory segment and shmid_ds data structure associated with it shall be destroyed when all processes with the segment attached have either detached the segment or terminated. If the segment is not attached to any process, it shall be destroyed immediately.
On page 2861 line 94250 section ipcrm, change:
shall be destroyed after the last detach.to:
shall be destroyed when all processes with the segment attached have either detached the segment or terminated. If the segment is not attached to any process, it shall be destroyed immediately.
|2019-03-16 09:58||kre||New Issue|
|2019-03-16 09:58||kre||Name||=> Robert Elz|
|2019-03-16 09:58||kre||Section||=> shmctl|
|2019-03-16 09:58||kre||Page Number||=> 1942|
|2019-03-16 09:58||kre||Line Number||=> 62578|
|2019-03-16 10:09||kre||Note Added: 0004326|
|2019-03-16 10:10||kre||Note Edited: 0004326|
|2019-03-18 09:39||geoffclare||Interp Status||=> ---|
|2019-03-18 09:39||geoffclare||Description Updated|
|2019-03-18 09:39||geoffclare||Desired Action Updated|
|2019-03-18 09:41||geoffclare||Desired Action Updated|
|2019-03-18 09:45||geoffclare||Note Added: 0004327|
|2019-03-18 11:47||Konrad_Schwarz||Note Added: 0004330|
|2019-03-28 17:28||Don Cragun||Summary||shctl(IPC_RMID) relationship with attached shared memory segments is not specified => shmctl(IPC_RMID) relationship with attached shared memory segments is not specified|
|2019-06-24 15:37||eblake||Relationship added||related to 0001237|
|2019-06-24 15:37||eblake||Relationship added||related to 0001238|
|2019-06-24 15:38||eblake||Relationship added||related to 0001239|
|2019-06-24 15:38||geoffclare||Note Added: 0004450|
|2019-06-24 15:39||geoffclare||Final Accepted Text||=> Note: 0004450|
|2019-06-24 15:39||geoffclare||Status||New => Resolved|
|2019-06-24 15:39||geoffclare||Resolution||Open => Accepted As Marked|
|2019-06-24 15:39||geoffclare||Tag Attached: tc3-2008|
|Mantis 1.1.6[^] Copyright © 2000 - 2008 Mantis Group|