]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
windows-scache-ref-leak-20061012
authorJeffrey Altman <jaltman@secure-endpoints.com>
Thu, 12 Oct 2006 06:57:40 +0000 (06:57 +0000)
committerJeffrey Altman <jaltman@secure-endpoints.com>
Thu, 12 Oct 2006 06:57:40 +0000 (06:57 +0000)
make sure the scache mutex is held across calls to cm_SyncOpDone

src/WINNT/afsd/cm_ioctl.c

index 0bbe4d8f6540d89ed12b64be283a82e8b60cbf36..695d8334acdab7b9562aeab0e616041e20a0ed04 100644 (file)
@@ -1039,7 +1039,9 @@ long cm_IoctlDeleteMountPoint(struct smb_ioctl *ioctlp, struct cm_user *userp)
                           dscp, cp, NULL, TRUE);
 
   done1:
+    lock_ObtainMutex(&scp->mx);
     cm_SyncOpDone(scp, NULL, CM_SCACHESYNC_NEEDCALLBACK | CM_SCACHESYNC_GETSTATUS);
+    lock_ReleaseMutex(&scp->mx);
 
   done2:
     cm_ReleaseSCache(dscp);
@@ -1899,7 +1901,9 @@ long cm_IoctlDeletelink(struct smb_ioctl *ioctlp, struct cm_user *userp)
                           dscp, cp, NULL, TRUE);
 
   done1:
+    lock_ObtainMutex(&scp->mx);
     cm_SyncOpDone(scp, NULL, CM_SCACHESYNC_NEEDCALLBACK | CM_SCACHESYNC_GETSTATUS);
+    lock_ReleaseMutex(&scp->mx);
 
   done2:
     cm_ReleaseSCache(dscp);