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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 2402 Actions


    Problem Report Number 2402
    Submitter's Classification Test Suite problem
    State Resolved
    Resolution Rejected (REJ)
    Problem Resolution ID REJ.X.0659
    Raised 2004-06-19 01:43
    Updated 2004-06-23 01:14
    Published 2004-06-23 01:14
    Product Standard Internationalised System Calls and Libraries Extended V3 (UNIX 03)
    Certification Program The Open Brand certification program
    Test Suite VSU version 5.2.5
    Test Identification CAPI.os/procprim/getitimer/T.getitimer 2
    CAPI.os/procprim/getitimer/T.getitimer 3
    Specification Base Definitions Issue 6
    Problem Summary Tests uses lower granularity time function for verifying success.
    Problem Text The problems with these assertions is that getitimer() is a
    high-resolution timestamp which measures time in nanoseconds. However,
    the times() system call, which is normalized to ticks, has less
    precision than using high-resolution timestamps.

    The tests are using a comparing a less precise timestamp
    to a more precise timstamp, and not appropriately approximating.
    Test Output
    ************************************************************************
    /tset/CAPI.os/procprim/getitimer/T.getitimer 2 Failed

    Test Description:
    Base Required Conformance
    A call to int getitimer(int which, struct itimerval *value) when
    which
    is ITIMER_VIRTUAL shall store the current value of the
    ITIMER_VIRTUAL
    timer into the structure pointed to by value and return 0.

    Test Information:
    PREP: Open a temporary scratch file
    PREP: Set the ITIMER_VIRTUAL timer to a known value.
    PREP: Loop in the program for arbitrary time.
    Perform dummy I/O on temporary scratch file.
    PREP: Obtain the ITIMER_VIRTUAL timer through getitimer().
    TEST: getitimer() returns the correct timer value
    timer value = original timer set - time elapsed
    ERROR: Invalid value returned by getitimer()
    Expecting: (360.000000 - 18.000000) approx Received:
    348.630000


    ************************************************************************


    ************************************************************************
    /tset/CAPI.os/procprim/getitimer/T.getitimer 3 Failed

    Test Description:
    Base Required Conformance
    A successful call to int getitimer(int which, struct itimerval
    *value)
    when which is ITIMER_PROF shall store the current value of the
    ITIMER_PROF timer into the structure pointed to by value and
    return 0.

    Test Information:
    PREP: Open a temporary scratch file
    PREP: Set the ITIMER_PROF timer to a known value.
    PREP: Loop in the program for arbitrary time.
    Perform dummy I/O on temporary scratch file.
    PREP: Obtain the ITIMER_PROF timer through getitimer().
    TEST: getitimer() returns the correct timer value
    timer value = original timer set - time elapsed
    ERROR: Invalid value returned by getitimer()
    Expecting: (360.000000 - 18.000000) approx Received:
    346.650000


    ************************************************************************

    Review Information

    Review Type TSMA Review
    Start Date 2004-06-19 01:43
    Last Updated 2004-06-21 18:20
    Completed 2004-06-21 18:20
    Status Complete
    Review Recommendation Rejected (REJ)
    Review Response The expected and actual values reported by the tests differ by several
    seconds. This discrepancy is much greater than could be explained by
    the difference in clock resolutions as claimed by the submitter.

    For example in test 2, the test has compared the tms_utime values
    returned by times() to determine that the process has consumed
    approximately 18 seconds of "user" CPU time. It therefore expects the
    time remaining for the ITIMER_VIRTUAL timer to have reduced by roughly
    that amount. It generously allows half a second leeway in the
    comparison (i.e. it expects between 17.5 and 18.5 seconds timer
    reduction) and this should be more than enough to allow for the effects
    of different clock resolutions.

    The actual time remaining reported by the test is 348.63 seconds, a
    reduction of only 11.37 seconds from the original 360 second timer
    setting. The test appears to have uncovered a major discrepancy between
    the CPU time usage seen by times() and getitimer().

    Review Type SA Review
    Start Date 2004-06-21 17:20
    Last Updated 2004-06-22 00:20
    Completed 2004-06-22 00:20
    Status Complete
    Review Resolution Rejected (REJ)
    Review Conclusion The SA does not find that a compelling argument has been presented
    that an error is present in the test which appears to be behaving as
    designed.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority