OpenAFS Master Repository branch, openafs-stable-1_6_x, updated. openafs-stable-1_6_6-43-g8f6a814

Gerrit Code Review gerrit@openafs.org
Wed, 12 Mar 2014 05:55:30 -0700 (PDT)


The following commit has been merged in the openafs-stable-1_6_x branch:
commit 8f6a814016fa7a8ef4bbe55425f9a9f4c66cb824
Author: Michael Meffie <mmeffie@sinenomine.net>
Date:   Mon Dec 23 12:10:36 2013 -0500

    vol: reset nextVnodeUnique when uniquifier rolls over
    
    The on disk uniquifier counter is set to 200 more than the current
    nextVnodeUnique counter when the volume information is updated to disk. When
    the nextVnodeUnique is near UINT32_MAX, then the uniquifier counter rolls
    over.  This can happen during a volume header update due to
    VBumpVolumeUsage_r().
    
    With this change, the nextVnodeUnique customer is reset to 2 and the
    uniquifier is reset to 202 when a roll over occurs. (uniquifier of 1 is
    reserved for the root vnode.)
    
    With this change, the number of possible uniquifier numbers is limited to
    200 less than UINT32_MAX.
    
    The following shows a series of vnode creation/deletions to illustrate
    the uniquifier rollover before this commit:
    
    fid = 536870918.4.4294967114, nextVnodeUnique = 4294967115, uniquifier = 4294967295
    fid = 536870918.4.4294967115, nextVnodeUnique = 4294967116, uniquifier = 4294967295
    fid = 536870918.4.4294967116, nextVnodeUnique = 4294967117, uniquifier = 21
    fid = 536870918.4.4294967117, nextVnodeUnique = 4294967118, uniquifier = 22
    
    and after this commit:
    
    fid = 536870918.4.4294967115, nextVnodeUnique = 4294967116, uniquifier = 4294967295
    fid = 536870918.4.4294967116, nextVnodeUnique = 2, uniquifier = 202
    fid = 536870918.4.2, nextVnodeUnique = 3, uniquifier = 202
    fid = 536870918.4.3, nextVnodeUnique = 4, uniquifier = 202
    
    Reviewed-on: http://gerrit.openafs.org/10617
    Tested-by: BuildBot <buildbot@rampaginggeek.com>
    Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
    Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
    Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
    (cherry picked from commit 64d7715c0247734731ef4cc8be5de32ee7c4a1f6)
    
    Change-Id: Ieead6921f8ebca436cbcaecbf7711236c6cdf0e9
    Reviewed-on: http://gerrit.openafs.org/10847
    Tested-by: BuildBot <buildbot@rampaginggeek.com>
    Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
    Reviewed-by: Andrew Deason <adeason@sinenomine.net>
    Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>

 src/vol/volume.c |   24 ++++++++++++++++++++----
 1 files changed, 20 insertions(+), 4 deletions(-)

-- 
OpenAFS Master Repository