OpenAFS Master Repository branch, openafs-devel-1_7_x, updated. openafs-devel-1_7_9-2-g8bd8ce5

Gerrit Code Review
Tue, 10 Apr 2012 06:52:20 -0700 (PDT)

The following commit has been merged in the openafs-devel-1_7_x branch:
commit bbc85a68b027ae0901a1702873a6d8e1abf94721
Author: Jeffrey Altman <>
Date:   Mon Apr 9 18:41:13 2012 -0400

    Windows: Refactor AFSValidateEntry
    Refactor AFSValidateEntry to avoid obtaining the
    ObjectInformation->Fcb->Resource when it isn't necessary.
    This will avoid contention and improve performance.
    The only time that the Fcb->Resource is required is when
    the object requires verification, the object is a FILE,
    and the object was successfully evaluated.
    Even with this reorganization there is a small window
    of opportunity for a deadlock to occur if a CcPurgeCacheSection()
    which is called with the Fcb->Resource held triggers a filter
    driver to issue a CreateFile and in between the two operations
    an invalidate object is received.
    Reviewed-by: Derrick Brashear <>
    Tested-by: Derrick Brashear <>
    Tested-by: Jeffrey Altman <>
    Reviewed-by: Jeffrey Altman <>
    (cherry picked from commit 779c27bf1daaf01c79c0bb7c687781151abb4383)
    Change-Id: I401167eea36f946f61cb9af6aafaa8f4bcc817a9
    Tested-by: BuildBot <>
    Reviewed-by: Jeffrey Altman <>

 src/WINNT/afsrdr/kernel/lib/AFSCreate.cpp  |    2 -
 src/WINNT/afsrdr/kernel/lib/AFSGeneric.cpp |  171 +++++++++++++---------------
 2 files changed, 80 insertions(+), 93 deletions(-)

OpenAFS Master Repository