From: Jeffrey Altman Date: Mon, 21 Nov 2011 18:14:40 +0000 (-0500) Subject: Windows: cm_GetSCache do not release unheld lock X-Git-Tag: upstream/1.6.1.pre4^2~32 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=256a9f51c024680bc2898d73d72574c63c5cd220;p=packages%2Fo%2Fopenafs.git Windows: cm_GetSCache do not release unheld lock if cm_GetNewSCache() fails, an attempt would be made to release cm_scacheLock which is not held. However, it should be noted that cm_GetNewSCache() cannot fail without itself triggering a panic. Reviewed-on: http://gerrit.openafs.org/6103 Tested-by: BuildBot Tested-by: Jeffrey Altman Reviewed-by: Jeffrey Altman (cherry picked from commit d42db13152fb8fa374db6531020da6effca51ab4) Change-Id: Ibb3aff0a256c6846ac8b9336a50ea021f8a1e2f6 Reviewed-on: http://gerrit.openafs.org/6809 Tested-by: BuildBot Reviewed-by: Derrick Brashear --- diff --git a/src/WINNT/afsd/cm_scache.c b/src/WINNT/afsd/cm_scache.c index f7c809f52..ecb055f55 100644 --- a/src/WINNT/afsd/cm_scache.c +++ b/src/WINNT/afsd/cm_scache.c @@ -688,7 +688,6 @@ long cm_GetSCache(cm_fid_t *fidp, cm_scache_t **outScpp, cm_user_t *userp, scp = cm_GetNewSCache(); /* returns scp->rw held */ if (scp == NULL) { osi_Log0(afsd_logp,"cm_GetSCache unable to obtain *new* scache entry"); - lock_ReleaseWrite(&cm_scacheLock); return CM_ERROR_WOULDBLOCK; } } else {