OpenAFS Master Repository branch, master, updated. openafs-devel-1_5_76-2191-gfe4e526

Gerrit Code Review gerrit@openafs.org
Mon, 20 Feb 2012 13:16:36 -0800 (PST)


The following commit has been merged in the master branch:
commit fe4e52655ce7e5a8e5f6c23cde678fc66c3db490
Author: Andrew Deason <adeason@sinenomine.net>
Date:   Fri Feb 17 17:12:46 2012 -0600

    viced: Relax "h_TossStuff_r failed" warnings
    
    Currently, h_TossStuff_r bails out and logs a message if we detect
    that somebody grabbed a reference or locked the host while we tried to
    h_NBLock_r. The reasoning for this is that it is not legal for anyone
    to h_Hold_r a host that has HOSTDELETED set (but the error is
    detectable and recoverable); callers are supposed to check for
    HOSTDELETED and not hold a host in that case.
    
    However, HOSTDELETED may not be set when h_TossStuff_r is called,
    since we call it if either HOSTDELETED _or_ CLIENTDELETED are set. If
    CLIENTDELETED is set and HOSTDELETED is not, it's perfectly fine (and
    necessary) for callers to grab a reference to the host. So, if that's
    what is going on, don't log a message, since that's normal behavior.
    
    Check for HOSTDELETED before we h_NBLock_r, since it is technically
    possible (and legal) for someone to grab a reference to the host and
    somehow set HOSTDELETED while we wait for h_NBLock_r to return. Also
    log the flags when we see this message.
    
    Change-Id: Ie50a0617de094bb1c721da28f100ed4b31aa849f
    Reviewed-on: http://gerrit.openafs.org/6733
    Reviewed-by: Alistair Ferguson <alistair.ferguson@mac.com>
    Reviewed-by: Derrick Brashear <shadow@dementix.org>
    Tested-by: BuildBot <buildbot@rampaginggeek.com>

 src/viced/host.c |   25 +++++++++++++++++++------
 1 files changed, 19 insertions(+), 6 deletions(-)

-- 
OpenAFS Master Repository