OpenAFS Master Repository branch, master, updated. openafs-devel-1_5_74_1-64-g34b7fd4

Gerrit Code Review gerrit@openafs.org
Mon, 3 May 2010 17:11:59 -0700 (PDT)


The following commit has been merged in the master branch:
commit 9be76c0d312e9d4ba879d2f82a7c556bf8025da7
Author: Simon Wilkinson <sxw@inf.ed.ac.uk>
Date:   Sat Nov 7 00:16:28 2009 +0000

    Refactor afs_NewVCache
    
    afs_NewVCache was a twisty turny maze of #ifdefs and duplicated code.
    This makes a number of sweeping changes to simplify this code, and to
    move platform specific elements out into their own directories.
    
    *) ShakeLooseVCaches is refactored so that the same code can be used
       both for platforms that support dynamic vcaches, and those which
       don't.
    *) afs_NewVCache, ShakeLooseVCaches, and afs_AllocVCache are all
       modified to remove platform specific code, and to call platform
       specific functions.
    *) A new platform file 'osi_vcache.c' is created to hold a number of
       platform specific vcache operations:
       *) osi_TryEvictVCache handles the decision of whether a vcache can
          be evicted or not, and does so if required
       *) osi_NewVnode allocates a new vnode
       *) osi_PrePopulateVCache does the necessary population of the
          vcache, before it's threaded onto the VLRUQ and associated hash
          tables.
       *) osi_AttachVnode handles attaching an OS vnode to our vcache,
          where that is necessary
       *) osi_PostPopulateVCache handles the vcache population that must
          occur after we're on the VLRUQ and have a vnode attached.
    
    Change-Id: I368e5fb500d012b44141aa8f8cf0516e63e58f57
    Reviewed-on: http://gerrit.openafs.org/1881
    Reviewed-by: Derrick Brashear <shadow@dementia.org>
    Tested-by: Derrick Brashear <shadow@dementia.org>

 src/afs/AIX/osi_vcache.c            |   75 +++++
 src/afs/DARWIN/osi_vcache.c         |  117 +++++++
 src/afs/FBSD/osi_vcache.c           |  112 +++++++
 src/afs/HPUX/osi_vcache.c           |   51 +++
 src/afs/IRIX/osi_vcache.c           |  112 +++++++
 src/afs/LINUX/osi_vcache.c          |  102 ++++++
 src/afs/LINUX24/osi_vcache.c        |  112 +++++++
 src/afs/NBSD/osi_vcache.c           |   66 ++++
 src/afs/OBSD/osi_vcache.c           |   66 ++++
 src/afs/SOLARIS/osi_vcache.c        |   70 ++++
 src/afs/UKERNEL/osi_vcache.c        |   49 +++
 src/afs/afs_osi.h                   |    7 +
 src/afs/afs_vcache.c                |  594 ++++++++---------------------------
 src/libafs/Makefile.common.in       |    2 +
 src/libafs/MakefileProto.AIX.in     |    1 +
 src/libafs/MakefileProto.DARWIN.in  |    1 +
 src/libafs/MakefileProto.DFBSD.in   |    1 +
 src/libafs/MakefileProto.DUX.in     |    1 +
 src/libafs/MakefileProto.FBSD.in    |    1 +
 src/libafs/MakefileProto.HPUX.in    |    1 +
 src/libafs/MakefileProto.IRIX.in    |    1 +
 src/libafs/MakefileProto.LINUX.in   |    1 +
 src/libafs/MakefileProto.NBSD.in    |    1 +
 src/libafs/MakefileProto.OBSD.in    |    1 +
 src/libafs/MakefileProto.SOLARIS.in |    1 +
 src/libuafs/Makefile.common.in      |   10 +
 26 files changed, 1087 insertions(+), 469 deletions(-)

-- 
OpenAFS Master Repository