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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 0449 Actions


    Problem Report Number 0449
    Submitter's Classification Specification problem
    State Resolved
    Resolution Rejected (REJ)
    Problem Resolution ID REJ.X.0068
    Raised 1994-06-09 08:00
    Updated 2003-03-13 08:00
    Published null
    Product Standard Internationalised System Calls and Libraries (XPG4)
    Certification Program The Open Brand certification program
    Test Suite VSX4 version 4.3.4
    Test Identification XPG4.os/ipc/T.shmat 2
    Linked Problem Reports PIN4.027, (in, old, system)
    Problem Summary PG4R.069 The test in question does the following: a) shmat() to generate a starting location. b) Using value returned from (a), add the size of shared memory segment from (a) to compute new address for seconda...
    Problem Text

    The test in question does the following:

    a) shmat() to generate a starting location.

    b) Using value returned from (a), add the size of shared memory
    segment from (a) to compute new address for secondary call.

    c) Using address from (b), call shmat() specifying address from
    (b) as the attach point.

    What this effectively tests a systems ability to alias; that is, have
    several virtual addresses point to the same physical page.

    As far as we know, no standards have ever specifically stated aliasing is a
    requirement. Furthermore, other calls such as mmap() with the MAP_FIXED option
    specifically state address specifications are not a good idea as architectures
    can vary. This is stated in POSIX 1003.4 and the AES.

    For HP-PA, aliasing is difficult as the hardware is based on a virtually
    indexed cache. This means we use the virtual address to select the cache line where the data resides. To make "full aliasing" work, HP-UX must guarantee
    that every virtual address select the same cache line. Not an easy task. In
    fact, the alternatives would be performance inhibitive as the result would
    lead to severe cache flushing upon every write access that uses an address
    different from the previous access.

    Because our shared memory segments reside in the "global address" space, the
    address must be the same for all users. shmget() creates the object and at
    that time the address space is selected to guarantee availability. Once the
    address is selected, all other processes will(must) see the same attach point
    if they shmat the object.

    In HP's opinion HP-UX meets the standard by returning EINVAL since any address
    generated is "illegal", other than the one created by the shmget(). To state
    otherwise requires "aliasing".


    Test Output
    /tset/XPG4.os/ipc/shmat/T.shmat 2 Failed

    Test Information:
    shmat(shmid2, 0x800fe800, SHM_RND) failed, returned 0xffffffff with
    errno 22 (EINVAL)

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    Permanent interpretation PIN4.027 is still valid for this test.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution Rejected (REJ)
    Review Conclusion
    This request is refused, please refer to PIN4.027.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority