23 #define BugCheckFileId (CDFS_BUG_CHECK_CLEANUP) 102 if (IrpContext->Vcb ==
NULL) {
165 CdCheckForDismount( IrpContext,
Vcb,
TRUE );
262 #pragma prefast( suppress:__WARNING_USE_OTHER_FUNCTION, "argument bogus" ) 300 Vcb->VolumeLockFileObject =
NULL;
301 SendUnlockNotification =
TRUE;
320 if (SendUnlockNotification) {
332 if (AttemptTeardown) {
347 CdPurgeVolume( IrpContext,
Vcb,
FALSE );
PEPROCESS NTAPI IoGetRequestorProcess(IN PIRP Irp)
#define CCB_FLAG_DISMOUNT_ON_CLOSE
#define CdReleaseFile(IC, F)
#define CdReleaseFcb(IC, F)
#define FSRTL_VOLUME_UNLOCK
VOID NTAPI IoAcquireVpbSpinLock(OUT PKIRQL Irql)
#define CdAcquireFcbExclusive(IC, F, I)
VOID NTAPI IoRemoveShareAccess(IN PFILE_OBJECT FileObject, IN PSHARE_ACCESS ShareAccess)
#define CdBugCheck(A, B, C)
#define CdUnlockFcb(IC, F)
VOID NTAPI FsRtlNotifyCleanup(IN PNOTIFY_SYNC NotifySync, IN PLIST_ENTRY NotifyList, IN PVOID FsContext)
_Inout_ PFILE_OBJECT _In_ TYPE_OF_OPEN TypeOfOpen
#define CdGetFcbOplock(F)
#define ASSERT_IRP_CONTEXT(IC)
VOID CdCompleteRequest(_Inout_opt_ PIRP_CONTEXT IrpContext, _Inout_opt_ PIRP Irp, _In_ NTSTATUS Status)
_Inout_ PFILE_OBJECT FileObject
#define CdAcquireVcbExclusive(IC, V, I)
NTSTATUS NTAPI FsRtlNotifyVolumeEvent(IN PFILE_OBJECT FileObject, IN ULONG EventCode)
#define CdReleaseVcb(IC, V)
#define CdUnlockVcb(IC, V)
#define CdIsFastIoPossible(F)
enum _TYPE_OF_OPEN TYPE_OF_OPEN
_Inout_ PFILE_OBJECT _In_ TYPE_OF_OPEN PFCB _In_opt_ PCCB Ccb
NTSTATUS NTAPI FsRtlFastUnlockAll(IN PFILE_LOCK FileLock, IN PFILE_OBJECT FileObject, IN PEPROCESS Process, IN PVOID Context OPTIONAL)
#define CdAcquireCdData(IC)
ClearFlag(Dirent->Flags, DIRENT_FLAG_NOT_PERSISTENT)
__drv_aliasesMem FORCEINLINE PIO_STACK_LOCATION IoGetCurrentIrpStackLocation(_In_ PIRP Irp)
BOOLEAN NTAPI CcUninitializeCacheMap(IN PFILE_OBJECT FileObject, IN OPTIONAL PLARGE_INTEGER TruncateSize, IN OPTIONAL PCACHE_UNINITIALIZE_EVENT UninitializeEvent)
#define FO_CLEANUP_COMPLETE
_Requires_lock_held_(_Global_critical_region_)
#define CdReleaseCdData(IC)
NTSTATUS CdHijackIrpAndFlushDevice(_In_ PIRP_CONTEXT IrpContext, _Inout_ PIRP Irp, _In_ PDEVICE_OBJECT TargetDeviceObject)
#define CdAcquireFileExclusive(IC, F)
NTSTATUS NTAPI FsRtlCheckOplock(IN POPLOCK Oplock, IN PIRP Irp, IN PVOID Context, IN POPLOCK_WAIT_COMPLETE_ROUTINE CompletionRoutine OPTIONAL, IN POPLOCK_FS_PREPOST_IRP PostIrpRoutine OPTIONAL)
BOOLEAN CdMarkDevForVerifyIfVcbMounted(_Inout_ PVCB Vcb)
VOID NTAPI IoReleaseVpbSpinLock(IN KIRQL Irql)
#define CdDecrementCleanupCounts(IC, F)