OpenAFS Master Repository branch, master, updated. openafs-devel-1_5_76-4293-g7d4f3a4

Gerrit Code Review gerrit@openafs.org
Thu, 5 Jun 2014 07:20:58 -0400


The following commit has been merged in the master branch:
commit 7d4f3a4710fb8c9fbde4294c2458ecf32658300b
Author: Mark Vitale <mvitale@sinenomine.net>
Date:   Thu Apr 3 16:37:51 2014 -0400

    afs: only reset access caches for the matching cell
    
    When an AFS user's tokens change (unlog, aklog) or expire,
    afs_ResetAccessCache() is called to reset all the access caches
    for that uid/PAG.
    
    However, a user/PAG may have tokens for multiple cells, and they
    may expire or be set/reset at different times.  Therefore, it is
    incorrect to assume that all access caches for a uid/PAG should
    be discarded when only one cell's tokens have changed.
    
    Modify afs_ResetAccessCache() to acccept a new argument 'cell',
    and only reset the access caches for a uid/PAG if the vcache
    resides in the specified cell.  If the caller really wants to
    reset all a user's access caches, specify cell=-1.
    
    For cache managers that are running with multiple PAGs and multiple
    cells, this should improve performance because 1) it avoids
    scanning access caches chains for vcaches that are not part of the
    current cell and 2) it avoids deleting access caches that may still
    good, thus preventing unnecessary FetchStatus calls.
    
    Change-Id: Id4c138dab45fd48265a4029880a5d57947e67a52
    Reviewed-on: http://gerrit.openafs.org/11070
    Tested-by: BuildBot <buildbot@rampaginggeek.com>
    Reviewed-by: D Brashear <shadow@your-file-system.com>

 src/afs/afs_prototypes.h |    2 +-
 src/afs/afs_user.c       |   18 +++++++++++++-----
 2 files changed, 14 insertions(+), 6 deletions(-)

-- 
OpenAFS Master Repository