OpenAFS Master Repository branch, openafs-stable-1_8_x, updated. openafs-stable-1_8_2-9-gfc9211b

Gerrit Code Review gerrit@openafs.org
Fri, 21 Dec 2018 06:10:49 -0500


The following commit has been merged in the openafs-stable-1_8_x branch:
commit fc9211be1b242e7026a679a41e5f53f3b4a7e818
Author: Andrew Deason <adeason@sinenomine.net>
Date:   Tue Aug 7 17:08:26 2018 -0500

    afs: Return memcache allocation errors
    
    During cache initialization, we can fail to allocate our dcache
    entries for memcache. Currently when this happens, we just log a
    message and try to disable dcache access. However, this results in at
    least one code path that causes a panic anyway during startup, since
    afs_CacheTruncateDaemon will try to trim the cache, and afs_GetDownD
    will call afs_MemGetDSlot, and we cannot find the given dslot.
    
    To avoid this, change our cache initialization to return an error,
    instead of trying to continue without a functional dcache. This causes
    afs_dcacheInit to return an error in this case, and by extension
    afs_CacheInit and the AFSOP_CACHEINIT syscall. Also change afsd to
    actually detect errors from AFSOP_CACHEINIT, and to bail out when it
    does.
    
    Thanks to gsgatlin@ncsu.edu for reporting the relevant panic.
    
    Reviewed-on: https://gerrit.openafs.org/13273
    Tested-by: BuildBot <buildbot@rampaginggeek.com>
    Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
    Reviewed-by: Benjamin Kaduk <kaduk@mit.edu>
    (cherry picked from commit 0da5ac4d9fb2a9b46c7415403a3cd26e711554e2)
    
    Change-Id: I00b0d3dac1f4d8edc46389fe3c59501fd23c18f8
    Reviewed-on: https://gerrit.openafs.org/13307
    Reviewed-by: Michael Meffie <mmeffie@sinenomine.net>
    Reviewed-by: Marcio Brito Barbosa <mbarbosa@sinenomine.net>
    Reviewed-by: Mark Vitale <mvitale@sinenomine.net>
    Tested-by: BuildBot <buildbot@rampaginggeek.com>
    Reviewed-by: Stephan Wiesand <stephan.wiesand@desy.de>

 src/afs/afs_dcache.c     |    4 +++-
 src/afs/afs_init.c       |    6 +++++-
 src/afs/afs_prototypes.h |    4 ++--
 src/afsd/afsd.c          |    6 +++++-
 4 files changed, 15 insertions(+), 5 deletions(-)

-- 
OpenAFS Master Repository