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

The Open Brand -- Problem Reporting and Interpretations System


Problem Report 1473 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 1473.


Report 1473 Actions


    Problem Report Number 1473
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Test Suite Deficiency (TSD)
    Problem Resolution ID TSD.X.0755
    Raised 1970-01-01 08:00
    Updated 2003-03-13 08:00
    Published 1995-11-01 08:00
    Product Standard Internationalised System Calls and Libraries Extended (UNIX 95)
    Certification Program The Open Brand certification program
    Test Suite VSU version 4.0.2
    Test Identification Base/usleep 1
    Problem Summary TSD4U.00058 This test may fail on all implementations.
    Problem Text
    This test may fail on all implementations.

    usleep() Test 1 fails. The test claims that the process didn't sleep
    as long as it should have, but the real problem is the way the test
    calculates the time.

    The test calls setitimer(ITIMER_REAL) with a huge value. Then it calls
    getitimer(ITIMER_REAL) before and after calling usleep(), and uses the
    difference between the getitimer() results to determine how long usleep()
    was asleep.

    This is unreliable for 2 reasons. First, if the system is busy, it may
    be slow in decrementing the process' ITIMER_REAL. It is more reliable
    to use gettimeofday() before and after calling usleep(). Second, the
    test converts the times to "double" needlessly, which loses precision.
    Test Output
    TEST CASE: usleep

    TEST PURPOSE #1
    A successful call to int usleep(useconds_t mseconds)
    shall suspend the current process from execution for
    at least the number of microseconds specified by
    mseconds and return 0.
    PREP: Set the real-time timer for the process to a
    known value
    PREP: Obtain the timer value before call to usleep()
    TEST: usleep() returns 0 on success
    PREP: Obtain the timer value after call to usleep()
    TEST: usleep() suspends the process execution for
    at least the time specified
    ERROR: The process did not sleep the number of
    microseconds specified in usleep()
    Expected sleep of at least: 879000 usecs was: 860000 usecs
    1 FAIL

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    We agree this is a test suite deficiency in the test
    suite version(s) listed.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution Test Suite Deficiency (TSD)
    Review Conclusion
    This is an agreed Test Suite Deficiency.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority