The following commit has been merged in the master branch:
commit b5e4e8c14130f601bbf43dee5927222ebf7613fa
Author: Mark Vitale <[email protected]>
Date:   Tue Jan 12 18:06:51 2016 -0500

    afs: fs getcacheparms miscounts dcaches for large files
    
    fs getcacheparms issued with the -excessive option tabulates in-memory
    dcaches ("DCentries") by size.  However, any dcache with validPos > 2^31
    is miscounted in the 4k-16k bucket.  This is caused by a type mismatch
    between 'validPos' (afs_size_t) and 'size' (int) which leads to a
    negative value for size by sign-extension.  The size comparison "sieve"
    fails for negative numbers; it skips the first bucket (0-4K) and dumps
    them in the second one (4k-16k).
    
    Move the declaration of 'size' closer to its use, and declare it with
    the same type as 'validPos' (afs_size_t) so the comparison sieve
    correctly places these dcaches in the last (>=1M) bucket.
    
    Change-Id: Ib0d973da92865043a4f1c068de5e9b81bcde2b9a
    Reviewed-on: https://gerrit.openafs.org/12347
    Reviewed-by: Stephan Wiesand <[email protected]>
    Tested-by: BuildBot <[email protected]>
    Reviewed-by: Benjamin Kaduk <[email protected]>

 src/afs/afs_pioctl.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

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

Reply via email to