169 #ifdef UDF_DELAYED_CLOSE 171 UDFPrint((
" UDFCommonShutdown: set UDF_VCB_FLAGS_NO_DELAYED_CLOSE\n"));
174 #endif //UDF_DELAYED_CLOSE 180 if(
Vcb->RootDirFCB &&
Vcb->RootDirFCB->FileInfo) {
181 UDFPrint((
" UDFCommonShutdown: UDFCloseAllSystemDelayedInDir\n"));
186 #ifdef UDF_DELAYED_CLOSE 189 #endif //UDF_DELAYED_CLOSE 227 Irp->IoStatus.Status = RC;
228 Irp->IoStatus.Information = 0;
#define UDFAcquireResourceExclusive(Resource, CanWait)
VOID UDFReleaseIrpContext(PtrUDFIrpContext PtrIrpContext)
#define STATUS_INSUFFICIENT_RESOURCES
#define UDFCloseAllSystemDelayedInDir(Vcb, FI)
#define UDFReleaseResource(Resource)
struct _PREVENT_MEDIA_REMOVAL_USER_IN * PPREVENT_MEDIA_REMOVAL_USER_IN
#define UDF_VCB_FLAGS_REMOVABLE_MEDIA
static int Link(const char **args)
#define UDF_VCB_FLAGS_VOLUME_READ_ONLY
#define IO_DISK_INCREMENT
NTSTATUS NTAPI KeDelayExecutionThread(IN KPROCESSOR_MODE WaitMode, IN BOOLEAN Alertable, IN PLARGE_INTEGER Interval OPTIONAL)
VOID UDFStopEjectWaiter(PVCB Vcb)
#define _SEH2_AbnormalTermination()
#define UDF_VCB_FLAGS_SHUTDOWN
#define IoCompleteRequest
PFLT_MESSAGE_WAITER_QUEUE CONTAINING_RECORD(Csq, DEVICE_EXTENSION, IrpQueue)) -> WaiterQ.mLock) _IRQL_raises_(DISPATCH_LEVEL) VOID NTAPI FltpAcquireMessageWaiterLock(_In_ PIO_CSQ Csq, _Out_ PKIRQL Irql)
#define UDF_VCB_FLAGS_NO_DELAYED_CLOSE
__drv_aliasesMem FORCEINLINE PIO_STACK_LOCATION IoGetCurrentIrpStackLocation(_In_ PIRP Irp)
_In_ PIO_STACK_LOCATION IrpSp
VOID UDFCloseAllDelayed(IN PVCB Vcb)
OSSTATUS UDFDoDismountSequence(IN PVCB Vcb, IN PPREVENT_MEDIA_REMOVAL_USER_IN Buf, IN BOOLEAN Eject)