mirror of
https://git.openafs.org/openafs.git
synced 2025-01-22 17:00:15 +00:00
Windows AFSRDR: Log before decrementing refcount
The library support package keeps count of the number of times the library code is active. When this goes to zero this means that unload of the library can continue. Although I cannot see it in the code it seems reasonable to assume that at that stage the device object might go away so (and if it doesn't do now it may in the future). This potentially renders it unsafe to do anything after InflightLibraryEvent has been signalled. This patch moves the logging up to above the decrement of the refcount. Change-Id: I9493d970cec4a025ca9e4c5542e2d838c87f7817 Reviewed-on: http://gerrit.openafs.org/5601 Reviewed-by: Derrick Brashear <shadow@dementix.org> Reviewed-by: Jeffrey Altman <jaltman@openafs.org> Tested-by: Jeffrey Altman <jaltman@openafs.org>
This commit is contained in:
parent
da9044cff9
commit
1b32b4800b
@ -477,6 +477,11 @@ AFSClearLibraryRequest()
|
||||
|
||||
__Enter
|
||||
{
|
||||
AFSDbgLogMsg( AFS_SUBSYSTEM_LOAD_LIBRARY,
|
||||
AFS_TRACE_LEVEL_VERBOSE,
|
||||
"%s Inflight Count %08lX\n",
|
||||
__FUNCTION__,
|
||||
pDevExt->Specific.Control.InflightLibraryRequests);
|
||||
|
||||
if( InterlockedDecrement( &pDevExt->Specific.Control.InflightLibraryRequests) == 0)
|
||||
{
|
||||
@ -486,11 +491,6 @@ AFSClearLibraryRequest()
|
||||
FALSE);
|
||||
}
|
||||
|
||||
AFSDbgLogMsg( AFS_SUBSYSTEM_LOAD_LIBRARY,
|
||||
AFS_TRACE_LEVEL_VERBOSE,
|
||||
"%s Inflight Count %08lX\n",
|
||||
__FUNCTION__,
|
||||
pDevExt->Specific.Control.InflightLibraryRequests);
|
||||
}
|
||||
|
||||
return ntStatus;
|
||||
|
Loading…
Reference in New Issue
Block a user