ASSERT(IrpContext);
+ FsRtlEnterFileSystem();
+
switch (IrpContext->MajorFunction)
{
case IRP_MJ_CLOSE:
VfatFreeIrpContext(IrpContext);
}
+ FsRtlExitFileSystem();
+
return Status;
}
}
else
{
- FsRtlEnterFileSystem();
Status = VfatDispatchRequest(IrpContext);
- FsRtlExitFileSystem();
}
return Status;
}
InterlockedDecrement(&QueueCount);
DPRINT("VfatDoRequest(IrpContext %p), MajorFunction %x, %d\n",
IrpContext, ((PVFAT_IRP_CONTEXT)IrpContext)->MajorFunction, QueueCount);
- FsRtlEnterFileSystem();
VfatDispatchRequest((PVFAT_IRP_CONTEXT)IrpContext);
- FsRtlExitFileSystem();
}
static
ASSERT(IrpContext != NULL);
ASSERT(IrpContext->Irp != NULL);
+ ASSERT(!(IrpContext->Flags & IRPCONTEXT_QUEUE) &&
+ (IrpContext->Flags & IRPCONTEXT_COMPLETE));
IrpContext->Flags |= IRPCONTEXT_CANWAIT;
IoMarkIrpPending(IrpContext->Irp);