OpenAFS Master Repository branch, openafs-stable-1_6_x, updated. openafs-stable-1_6_1pre2-120-g93f9c39

Gerrit Code Review
Mon, 28 May 2012 17:34:48 -0700 (PDT)

The following commit has been merged in the openafs-stable-1_6_x branch:
commit 93f9c397a22b6fa4ad0bf5b0c497380732b60165
Author: Andrew Deason <>
Date:   Fri May 18 17:40:38 2012 -0400

    afs: Do not QueueVCB before osi_dnlc_purge*
    In afs_FlushVCache, when we QueueVCB, we might drop the afs_xvcache
    lock (as of 76158df491f47de56d1febe1d1d2d17d316c9a74). The vcache may
    still be on the DNLC, so a lookup while xvcache is dropped can cause
    someone else to grab a reference to the vcache while it is being
    flushed. This can cause panics and failed assertions, since someone
    will have a reference to the flushed vcache, which is effectively
    freed and many of the structure fields are no longer valid.
    So instead, do not call QueueVCB until we have purged the vcache from
    the DNLC.
    Tested-by: BuildBot <>
    Reviewed-by: Derrick Brashear <>
    (cherry picked from commit 0e81db38b549d79a3af5fce0f9f8fa48d9e6efeb)
    Change-Id: Idabad9076c6c36bede3faf459abb940aae5a975c
    Tested-by: BuildBot <>
    Reviewed-by: Derrick Brashear <>

 src/afs/afs_vcache.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

OpenAFS Master Repository