windows: ObjectInformationCB.ObjectReferenceCount
authorJeffrey Altman <jaltman@your-file-system.com>
Mon, 26 Mar 2012 01:29:40 +0000 (21:29 -0400)
committerJeffrey Altman <jaltman@secure-endpoints.com>
Wed, 28 Mar 2012 04:08:41 +0000 (21:08 -0700)
commitf7bea476c7f6e8489372e138dc60ebcdd92c40c1
tree4822017a25bccf62a4611d3de76f6c17976c1e02
parent79665a251d8b6cf9cb821accfd3819081f81f4c6
windows: ObjectInformationCB.ObjectReferenceCount

The ObjectInformationCB.ObjectReferenceCount is protected by
the VolumeCB->ObjectInfoTree.TreeLock.   When the TreeLock is
dropped the reference count can change.  Hold the TreeLock across
both ObjectReferenceCount == 0 tests and the associated tear down
or repeat the ObjectReferenceCount == 0 test after the TreeLock
is reacquired.

Change-Id: I069c22ae8f3a93fad3ef9a662df5b4903b317897
Reviewed-on: http://gerrit.openafs.org/6959
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@secure-endpoints.com>
Tested-by: Jeffrey Altman <jaltman@secure-endpoints.com>
src/WINNT/afsrdr/kernel/lib/AFSCleanup.cpp
src/WINNT/afsrdr/kernel/lib/AFSGeneric.cpp
src/WINNT/afsrdr/kernel/lib/AFSWorker.cpp