Author: mjmartin Date: Fri Nov 6 00:43:57 2009 New Revision: 43982
URL: http://svn.reactos.org/svn/reactos?rev=43982&view=rev Log: [cdfs] - CdfsVerifyVolume: Disable the delivery of normal Kernel APC's before acquiring resource and re-enable APC's after releasing resource. Fixes ASSERT from ntoskrnl/ex/resource.c. Noticed by Stefan.
Modified: trunk/reactos/drivers/filesystems/cdfs/fsctl.c
Modified: trunk/reactos/drivers/filesystems/cdfs/fsctl.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/cdfs/fs... ============================================================================== --- trunk/reactos/drivers/filesystems/cdfs/fsctl.c [iso-8859-1] (original) +++ trunk/reactos/drivers/filesystems/cdfs/fsctl.c [iso-8859-1] Fri Nov 6 00:43:57 2009 @@ -466,6 +466,7 @@ Stack = IoGetCurrentIrpStackLocation (Irp); DeviceToVerify = Stack->Parameters.VerifyVolume.DeviceObject;
+ FsRtlEnterFileSystem(); ExAcquireResourceExclusiveLite (&DeviceExt->VcbResource, TRUE);
@@ -473,6 +474,7 @@ { DPRINT1 ("Volume has been verified!\n"); ExReleaseResourceLite (&DeviceExt->VcbResource); + FsRtlExitFileSystem(); return STATUS_SUCCESS; }
@@ -511,6 +513,7 @@ DeviceToVerify->Flags &= ~DO_VERIFY_VOLUME;
ExReleaseResourceLite (&DeviceExt->VcbResource); + FsRtlExitFileSystem();
return Status; }