From: Jeffrey Altman Date: Fri, 16 Dec 2011 22:22:49 +0000 (-0500) Subject: Windows: move to head of queue no-op if not in queue X-Git-Tag: upstream/1.8.0_pre1^2~2932 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=0b2639ff4fd732dfac2c1dc058d6c517cc966737;p=packages%2Fo%2Fopenafs.git Windows: move to head of queue no-op if not in queue If the buffer is not in the queue, do nothing. Change-Id: Icdb95775bcc6d010ca1926ce4384d9edcd8f1cd3 Reviewed-on: http://gerrit.openafs.org/6351 Tested-by: BuildBot Reviewed-by: Jeffrey Altman Tested-by: Jeffrey Altman --- diff --git a/src/WINNT/afsd/cm_buf.c b/src/WINNT/afsd/cm_buf.c index 142342d18..728327117 100644 --- a/src/WINNT/afsd/cm_buf.c +++ b/src/WINNT/afsd/cm_buf.c @@ -2629,6 +2629,9 @@ buf_RemoveFromRedirQueue(cm_scache_t *scp, cm_buf_t *bufp) { lock_AssertWrite(&buf_globalLock); + if (!(bufp->qFlags & CM_BUF_QREDIR)) + return; + lock_ObtainMutex(&scp->redirMx); _InterlockedAnd(&bufp->qFlags, ~CM_BUF_QREDIR); @@ -2650,8 +2653,8 @@ void buf_MoveToHeadOfRedirQueue(cm_scache_t *scp, cm_buf_t *bufp) { lock_AssertWrite(&buf_globalLock); - osi_assertx(bufp->qFlags & CM_BUF_QREDIR, - "buf_MoveToHeadOfRedirQueue buffer not held by redirector"); + if (!(bufp->qFlags & CM_BUF_QREDIR)) + return; lock_ObtainMutex(&scp->redirMx);