OpenAFS Master Repository branch, openafs-stable-1_6_x, updated. openafs-stable-1_6_2_1-124-gd99de7f

Gerrit Code Review gerrit@openafs.org
Tue, 7 May 2013 08:04:06 -0700 (PDT)


The following commit has been merged in the openafs-stable-1_6_x branch:
commit d99de7f2e869c9dcf2873f0c62d7fbe54f7afe43
Author: Andrew Deason <adeason@sinenomine.net>
Date:   Wed Apr 17 18:04:58 2013 -0500

    LINUX: Sometimes let dentry_open handle refcounts
    
    When Linux changed dentry_open to use a 'path' argument, they also
    changed it so dentry_open handles incrementing the relevant ref
    counts. So now, sometimes we need to inc the dentry and vfsmount
    refcounts ourselves, and sometimes we need to leave them alone.
    
    To accommodate this, change afs_dentry_open to also handle refcounting
    itself, and 'get' the given dentry and vfsmount if necessary.
    
    Also note that currently, afs_linux_raw_open can call afs_dentry_open
    twice in the case of an error, but it does not dget(dp). This means
    that dp could be undercounted, since dentry_open on older kernels will
    dec the refcount on the given dentry in the case of an error. This
    change should also fix this so dp is not undercounted in that case.
    
    FIXES 131613
    
    Reviewed-on: http://gerrit.openafs.org/9801
    Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
    Reviewed-by: Marc Dionne <marc.c.dionne@gmail.com>
    Tested-by: BuildBot <buildbot@rampaginggeek.com>
    Reviewed-by: Andrew Deason <adeason@sinenomine.net>
    (cherry picked from commit e31240732cbe449fedea5095037ac08d1d513fa9)
    
    Change-Id: I082063d324d99c3d02ed372a1c20462f13bb4a26
    Reviewed-on: http://gerrit.openafs.org/9803
    Tested-by: BuildBot <buildbot@rampaginggeek.com>
    Reviewed-by: Marc Dionne <marc.c.dionne@gmail.com>
    Reviewed-by: Derrick Brashear <shadow@your-file-system.com>
    Reviewed-by: Simon Wilkinson <simonxwilkinson@gmail.com>
    Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>

 src/afs/LINUX/osi_compat.h |    3 ++-
 src/afs/LINUX/osi_file.c   |    9 ++++++---
 2 files changed, 8 insertions(+), 4 deletions(-)

-- 
OpenAFS Master Repository