OpenAFS Master Repository branch, master, updated. openafs-devel-1_5_76-4282-gde74227

Gerrit Code Review gerrit@openafs.org
Tue, 3 Jun 2014 11:20:41 -0400


The following commit has been merged in the master branch:
commit de74227d9c925206cd6d46496ec4682569d3105b
Author: Marc Dionne <marc.dionne@your-file-system.com>
Date:   Tue Apr 29 12:48:03 2014 -0400

    libafs: Speed up afs_CheckTokenCache
    
    On systems with a large number of PAGs and files in use, the
    periodic daemon job that checks for expired credentials and
    cleans up the axs cache can run for a very long time.  This
    can lead to kernel soft lockups and eventually hang processes
    and file access because of unavailable locks.
    
    Rework the scanning logic in afs_CheckTokenCache to make the
    scanning more efficient in most real world cases.  On a test
    system accessing ~4000 files from processes in 1000 PAGs, this
    has been observed to reduce the runtime of afs_CheckTokenCache
    from a problematic ~70s down to about 0.7s.
    
    Additionally, this changes the conditions in which an axscache is
    discarded. uid+cell (rather than just uid) must now match, and
    if no matching unixuser is found, it will also be discarded.
    
    Adapted from code from Jeffrey Altman who provided the original
    loop algorithm and code.
    
    Change-Id: I65b275b4244b3b6ab65453623bb8729530a9e1a6
    Reviewed-on: http://gerrit.openafs.org/11123
    Tested-by: BuildBot <buildbot@rampaginggeek.com>
    Reviewed-by: Chas Williams - CONTRACTOR <chas@cmf.nrl.navy.mil>
    Reviewed-by: D Brashear <shadow@your-file-system.com>

 src/afs/afs_user.c |   83 ++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 64 insertions(+), 19 deletions(-)

-- 
OpenAFS Master Repository