The following commit has been merged in the openafs-stable-1_6_x branch:
commit 60e113d66d5c8d7b6b53055d541996550e3d29d4
Author: Mark Vitale <[email protected]>
Date:   Thu May 26 16:53:47 2016 -0400

    SOLARIS: support mmap() over 4GiB
    
    When mmap() is issued for exactly 4GiB of a large AFS-resident file,
    mmap() fails with ENOMEM.  This is because the AFS code is handling the
    requested length as u_int instead of size_t, resulting in a 0 being
    passed back to the caller.
    
    When mmap() is issued for non-multiples of 4GiB, the subsequent mapping
    will not contain all the requested pages, and for the same reason - the
    mapped size has been truncated to 32 bits.  This results in SIGSEGV when
    accessing the non-mapped page(s).
    
    Fix the signature of afs_map() to specify the correct type for the length.
    
    Thanks to Robert Milkowski for the report and diagnosis.
    
    Reviewed-on: https://gerrit.openafs.org/12291
    Tested-by: BuildBot <[email protected]>
    Tested-by: Mark Vitale <[email protected]>
    Reviewed-by: Benjamin Kaduk <[email protected]>
    (cherry picked from commit 75325fc9ab1cec4a338e1aaf1b32de1922492b12)
    
    Change-Id: I8677aebf3afa6a6c0596f7d9afc06fe36d728fd3
    Reviewed-on: https://gerrit.openafs.org/12349
    Reviewed-by: Mark Vitale <[email protected]>
    Tested-by: BuildBot <[email protected]>
    Reviewed-by: Stephan Wiesand <[email protected]>

 src/afs/SOLARIS/osi_vnodeops.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

-- 
OpenAFS Master Repository
_______________________________________________
OpenAFS-cvs mailing list
[email protected]
https://lists.openafs.org/mailman/listinfo/openafs-cvs

Reply via email to