OpenAFS Master Repository branch, master, updated. BP--openafs-stable-1_6_x-1328-g51fa590

Gerrit Code Review gerrit@openafs.org
Mon, 27 Jun 2011 08:19:29 -0700 (PDT)


The following commit has been merged in the master branch:
commit 51fa590e704c77c0e9ba873ecb854448885030a5
Author: Jeffrey Altman <jaltman@your-file-system.com>
Date:   Mon Jun 27 09:31:54 2011 -0400

    Windows: MergeStatus before SyncOpDone
    
    cm_SyncOp/cm_SyncOpDone is used to synchronize the RPC processing
    to ensure that calls which are in conflict cannot occur at the
    same time but also to ensure that the ordering of operations
    is consistent.  cm_MergeStatus() was in many cases executed after
    cm_SyncOpDone() removed the synchronization barrier which in turn
    permitted status information to be applied out of order.  Side
    effects could have included data loss due to client side file
    truncation.  More commonly two StoreData RPCs would have their
    status information applied out of order forcing the cache manager
    to invalidate all of the cached data for the file.
    
    Change-Id: I8073da701cf11cd0df2b901e81180de7c193ae23
    Reviewed-on: http://gerrit.openafs.org/4891
    Tested-by: BuildBot <buildbot@rampaginggeek.com>
    Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
    Tested-by: Jeffrey Altman <jaltman@openafs.org>

 src/WINNT/afsd/cm_dcache.c   |    6 +++---
 src/WINNT/afsd/cm_vnodeops.c |   27 ++++++++++++---------------
 2 files changed, 15 insertions(+), 18 deletions(-)

-- 
OpenAFS Master Repository