Defect Report concerning: IEEE Std. 1003.1-1996, ISO/IEC 9945-1:1996 - C API
Clause: P 306, Line 713
PASC Interpretation Ref: pasc-1003.1-100
Topic: thread holding a mutex


This is an unapproved interpretation of PASC 1003.1-1996, ISO/IEC 9945-1:1996 - C API.

Use of the information contained in this unapproved document is at your own risk.

Last update: 10 April,2001


								1003.1-96  #100

 _____________________________________________________________________________

	Interpretation Number:	XXXX
	Topic:			thread holding a mutex
	Relevant Sections:	P 306, Line 713


PASC Interpretation Request: (Defect Report)
----------------------------  

	Date: 1999 Sep 9


------------------------------------------------------------------------ 

 7  Defect Report concerning (number and title of International Standard
    or DIS final text, if applicable): 

IEEE Std 1003.1-1996 (incorporates 1003.1-1990, 1003.1b-1993, 1003.1c-1995, 1003.1i-1995) (ISO 9945-1:1996)

------------------------------------------------------------------------ 

 8  Qualifier (e.g. error, omission, clarification required):

3

Error=1 , Omission=2, Clarification=3

------------------------------------------------------------------------ 

 9  References in document (e.g. page, clause, figure, and/or table
    numbers):

P 306, Line 713

------------------------------------------------------------------------ 

10  Nature of defect (complete, concise explanation of the perceived
    problem):


The text in this paragraph is apparently referring to the text
at Page 290, line 141.  However, the two paragraphs share no
common terminology, and thus the meaning is at least partially lost.


------------------------------------------------------------------------ 

11  Solution proposed by the submitter (optional):

Minimally, the two should share the same terminology.  Better
yet is to cross reference the concepts, rather than trying to
describe it (in two different ways).

Try this instead (change starts at the *):

"While a thread is holding...protocol attributes *is not subject to the
requirement that it resume execution after all other runnable processes
at equal or greater priority have been scheduled to run as required
by sched_setparam() and similar calls".  (2 places).

Also, at line 143, change to read:

"except as specified under pthread_mutexattr_getprotocol()".


------------------------------------------------------------------------ 




Interpretation response
------------------------
The standard is unclear on this issue, and no conformance distinction
can be made between alternative implementations based on this. This is
being referred to the sponsor.

Rationale
-------------
None.

Notes to project editor (not part of this interpretation):
-----------------------------------------------------------
Suggest change lines 141-143 on page 290 to use "tail" terminology. :

The target process, whether it is running or not running, shall
be moved to the tail of the thread list for its priority.


Forwarded to Interpretations group: 10 Sep 1999
Proposed resolution: 25 July 2000
Finalised interpretation: 29 August 2000