HomeAbout Us A-Z IndexSearch * Contact Us Register LoginPress Shop

The Open Brand -- Problem Reporting and Interpretations System


Problem Report 1069 Details

Help Show help | Quick Search | Submit a Test Suite Support Request | Click here to view your privileges

This page provides all information on Problem Report 1069.


Report 1069 Actions


    Problem Report Number 1069
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Temporary Interpretation (TIN)
    Problem Resolution ID TIN.X.0065
    Raised 1970-01-01 08:00
    Updated 2003-03-13 08:00
    Published 1998-05-01 08:00
    Product Standard Internationalised System Calls and Libraries Extended V2 (UNIX 98)
    Certification Program The Open Brand certification program
    Test Suite VSRT version 5.0.1
    Test Identification rt.os/semaphores/sem_init 3
    Specification System Interfaces and Headers Issue 5
    Location in Spec See Problem Text
    Problem Summary TIN4R.00004 The submitter feels the spec allows the implementation to always return 0 from sem_getvalue if a semaphore is locked, regardless of the number of waiting threads.
    Problem Text
    The sem_init test case 3 forks three children to verify that
    the three children are blocking and sharing the same semaphore.
    The verification is done by use of the sem_getvalue() function.
    In XSH5, page 751, the following is stated for sem_getvalue()

    If sem is locked, then the value returned by sem_getvalue()
    is either zero or a negative number whose absolute value
    represents the number of processes waiting for the semaphores
    at some unspecified time during the call.

    The test case only provides a condition to accept and verifiy that
    a negative number is returned. The implemenation under test conforms
    to the other condition of returning zero if the semaphore is locked.
    The test case needs to test for both conditions either a zero return
    or a negative number returned.
    Test Output
    10|1 /tset/rt.os/semaphores/sem_init/T.sem_init 12:40:17|TC Start, scenario
    ref 1-0, ICs: {3}
    15|1 3.1-lite 1|TCM Start
    400|1 3 1 12:40:17|IC Start
    200|1 3 12:40:17|TP Start
    520|1 3 00019738 4 1|Before post 1 expected semaphore value to be -3, is 0
    520|1 3 00019738 4 2|Before post 2 expected semaphore value to be -2, is 0
    520|1 3 00019738 4 3|Before post 3 expected semaphore value to be -1, is 0
    220|1 3 1 12:40:27|FAIL
    410|1 3 1 12:40:27|IC End

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    We recommend this request be sent for 14-day review.

    In our opinion the submitter is misreading the specification and the
    review committee should refuse the request.

    When the specification states the return from sem_getvalue for a locked
    semaphore is 0 or a negative number it is not giving the implementation
    a selection of alternatives, it is indicating the required values,
    depending on the state of the semaphore. The implementation may only
    return 0 if the semaphore is locked and no threads are waiting and must
    return a negative number whose absolute value is the number of waiting
    threads otherwise. Thus the test is correct as written.

    If the review committee fails to reach concensus on refusing the request we
    recommend a POSIX Interpretation be raised and a TIN granted in the interim.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution No Resolution Given
    Review Conclusion
    A POSIX interpretation request will be filed for this matter.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution Temporary Interpretation (TIN)
    Review Conclusion
    A Temporary Interpretation is granted.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority