From: Jeffrey Altman Date: Sat, 10 Nov 2007 22:55:19 +0000 (+0000) Subject: DEVEL15-windows-readonly-volume-callbacks-20071110 X-Git-Tag: openafs-devel-1_5_28~63 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=d63e5ba4a9fa85267e64ff305222a12c2ac6f028;p=packages%2Fo%2Fopenafs.git DEVEL15-windows-readonly-volume-callbacks-20071110 avoid a deadlock (cherry picked from commit b5935d47fb5b06c4f1c74c3671af4b1a481b8ab3) --- diff --git a/src/WINNT/afsd/cm_volume.c b/src/WINNT/afsd/cm_volume.c index a4a2b6f3e..84155040d 100644 --- a/src/WINNT/afsd/cm_volume.c +++ b/src/WINNT/afsd/cm_volume.c @@ -1521,17 +1521,15 @@ cm_VolumeRenewROCallbacks(void) cm_InitReq(&req); + lock_ReleaseRead(&cm_volumeLock); if (cm_GetSCache(&fid, &scp, cm_rootUserp, &req) == 0) { - lock_ReleaseRead(&cm_volumeLock); lock_ObtainMutex(&scp->mx); cm_GetCallback(scp, cm_rootUserp, &req, 1); lock_ReleaseMutex(&scp->mx); cm_ReleaseSCache(scp); - lock_ObtainRead(&cm_volumeLock); } + lock_ObtainRead(&cm_volumeLock); } } lock_ReleaseRead(&cm_volumeLock); } - -