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

The Open Brand -- Problem Reporting and Interpretations System


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


Report 1190 Actions


    Problem Report Number 1190
    Submitter's Classification Minor System Fault
    State Resolved
    Resolution Rejected (REJ)
    Problem Resolution ID REJ.X.0392
    Raised 1970-01-01 08:00
    Updated 2003-03-13 08:00
    Published null
    Product Standard Internationalised System Calls and Libraries Extended (UNIX 95)
    Certification Program The Open Brand certification program
    Test Suite VSU version 4.1.0
    Test Identification base/msync 3
    Problem Summary PG4U.00075 This request seeks a MSF for implementations which do not permit msync(MS_INVALIDATE) operations on mmap(MAP_PRIVATE) memory regions.
    Problem Text
    We request a minor system fault for our implementation for this failure.
    This failure results from our system conformance with the OSF Application
    Environment Specification for OSF/1. This specification requires that an
    msync() call with MS_INVALIDATE flag on a region created by using the
    MAP_PRIVATE flag return -1 with an errno of EINVAL. XPG4 V2 XSH requires
    that this operation succeed on MAP_PRIVATE regions. We believe that
    application portability will not be affected by this behavior. It makes
    little sense for an application to invalidate a private mapping.
    Test Output
    TEST CASE: msync

    TEST PURPOSE #3
    A successful call to int msync(void *addr, size_t len,
    int flags) when flags contains the flag MS_INVALIDATE
    shall invalidate all cached copies of all pages in the
    range [addr,addr+len] and return 0.
    PREP: Obtain the system page size by call to
    sysconf(_SC_PAGESIZE)
    PREP: Establish signal handlers for SIGSEGV and SIGBUS
    PREP: Open a file and initialize it
    PREP: Allocate memory for buffer
    PREP: Now set proper permissions and re-open file
    PREP: Find a fixed address for mapping text
    PREP: Map first section
    PREP: Map second section
    PREP: Map third section
    PREP: Read data from mapped page to be sure it's in
    memory
    PREP: After the file is mapped modify it using the
    file descriptor
    TEST: msync(adr, len, MS_INVALIDATE) returns 0
    ERROR: Call to msync() did not return as expected
    Expected: 0 Received: -1

    3 FAIL

    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 refused.

    We believe the spec mandate that msync(,,MS_INVALIDATE) work on
    memory mapped via mmap(,,,MAP_PRIVATE) calls is more than a minor
    issue.

    We believe developers may find it useful to develop applications
    that invalidate private mappings. One possible reason for this
    would be to reinitialize a region of memory without unmapping and
    remapping it.

    Applications which depended on this functionality would be likely
    to; abort if the msync return value was properly checked, or
    execute or dump core in some apparently random manner if the
    msync return value was not checked.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution No Resolution Given
    Review Conclusion
    This request is refused. XSH is clear in this requirement. The IEEE
    Standard 1003.1b - 1993 further reinforces the X/Open requirement.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution Rejected (REJ)
    Review Conclusion
    This request is refused.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority