]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
Windows: add lock assertions to cm_buf.c
authorJeffrey Altman <jaltman@your-file-system.com>
Mon, 16 May 2011 01:53:56 +0000 (21:53 -0400)
committerJeffrey Altman <jaltman@openafs.org>
Wed, 18 May 2011 17:58:39 +0000 (10:58 -0700)
add lock assertions to cm_buf.c in hopes of detecting why
periodic buf_scacheHashTable corruption is being detected.

Change-Id: Ib93ac7d449c7f2cb065219981f16ba319a9273b1
Reviewed-on: http://gerrit.openafs.org/4659
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@openafs.org>
Tested-by: Jeffrey Altman <jaltman@openafs.org>
Reviewed-on: http://gerrit.openafs.org/4674

src/WINNT/afsd/cm_buf.c

index 6dc8c6b2604f9bc055775e53a7d0738609374351..676bed6fb307c8ac2cd85f2ee4750bde1f802b10 100644 (file)
@@ -655,6 +655,8 @@ cm_buf_t *buf_FindLocked(struct cm_scache *scp, osi_hyper_t *offsetp)
     afs_uint32 i;
     cm_buf_t *bp;
 
+    lock_AssertAny(&buf_globalLock);
+
     i = BUF_HASH(&scp->fid, offsetp);
     for(bp = cm_data.buf_scacheHashTablepp[i]; bp; bp=bp->hashp) {
         if (cm_FidCmp(&scp->fid, &bp->fid) == 0
@@ -1065,6 +1067,8 @@ long buf_GetNewLocked(struct cm_scache *scp, osi_hyper_t *offsetp, cm_req_t *req
              * appropriate label, if requested.
              */
             if (scp) {
+                lock_AssertWrite(&buf_globalLock);
+
                 bp->qFlags |= CM_BUF_QINHASH;
                 bp->fid = scp->fid;
 #ifdef DEBUG