OpenAFS Master Repository branch, openafs-devel-1_7_x, updated. openafs-devel-1_7_21-43-ge21ba80

Gerrit Code Review gerrit@openafs.org
Fri, 1 Feb 2013 12:30:53 -0800 (PST)


The following commit has been merged in the openafs-devel-1_7_x branch:
commit a5788a4befb25d6caaaead1c8cd39c04e0cb8a45
Author: Jeffrey Altman <jaltman@your-file-system.com>
Date:   Sat Dec 29 00:57:31 2012 -0500

    Windows: DirOpenReferenceCount reorganizing completed
    
    This patchset completes the reorganizing of the DirOpenReferenceCount
    handling.  Now that every AFSCcb is given a refCount in AFSInitCcb()
    which is released in AFSRemoveCcb() it is possible to simplify some
    of the logic surrounding DirOpenReferenceCount handling across
    the AFSCommonCreate -> XXX -> AFSLocateNameEntry -> {MountPoint, Symlink}
    call sequences.
    
    Wherever possible releasing of DirOpenReferenceCounts occur in a
    functions try_exit block.  AFSCommonCreate() uses the new variables
    bReleaseDir and bReleaseParentDir to track whether these refcounts
    need to be released.  Additional comments document the decision
    making.
    
    There was at least one code path in AFSLocateNameEntry() where
    the DirOpenReferenceCount could be dropped when it should not have
    been. (pExistingDirNode == pDirNode).
    
    Reviewed-on: http://gerrit.openafs.org/8860
    Tested-by: BuildBot <buildbot@rampaginggeek.com>
    Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
    Tested-by: Jeffrey Altman <jaltman@your-file-system.com>
    (cherry picked from commit c0627f8620594191ce5901937175c5f1a93daec2)
    
    Change-Id: I4d9435ae474e78843421132d71b00908904cfb7a
    Reviewed-on: http://gerrit.openafs.org/9009
    Tested-by: BuildBot <buildbot@rampaginggeek.com>
    Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>

 src/WINNT/afsrdr/kernel/lib/AFSCreate.cpp          |  373 +++++++-------------
 src/WINNT/afsrdr/kernel/lib/AFSDirControl.cpp      |  208 +++--------
 src/WINNT/afsrdr/kernel/lib/AFSGeneric.cpp         |    5 +-
 src/WINNT/afsrdr/kernel/lib/AFSNameSupport.cpp     |  112 +++----
 .../kernel/lib/AFSNetworkProviderSupport.cpp       |    5 +
 5 files changed, 247 insertions(+), 456 deletions(-)

-- 
OpenAFS Master Repository