23#define BugCheckFileId (CDFS_BUG_CHECK_PNP)
73#pragma alloc_text(PAGE, CdCommonPnp)
74#pragma alloc_text(PAGE, CdPnpCancelRemove)
75#pragma alloc_text(PAGE, CdPnpQueryRemove)
76#pragma alloc_text(PAGE, CdPnpRemove)
77#pragma alloc_text(PAGE, CdPnpSurpriseRemove)
147#pragma prefast(suppress: 28175, "this is a filesystem driver, touching the size member is allowed")
168 Vcb = &OurDeviceObject->
Vcb;
294 Vcb->VcbReference += 1;
315 Vcb->VcbReference -= 1;
378 VcbPresent = CdCheckForDismount( IrpContext,
Vcb,
TRUE );
566 VcbPresent = CdCheckForDismount( IrpContext,
Vcb,
TRUE );
707 VcbPresent = CdCheckForDismount( IrpContext,
Vcb,
TRUE );
static PIO_STACK_LOCATION IoGetCurrentIrpStackLocation(PIRP Irp)
VOID CdCompleteRequest(_Inout_opt_ PIRP_CONTEXT IrpContext, _Inout_opt_ PIRP Irp, _In_ NTSTATUS Status)
#define ASSERT_EXCLUSIVE_CDDATA
#define CdAcquireCdData(IC)
#define CdUpdateVcbCondition(V, C)
#define CdReleaseVcb(IC, V)
NTSTATUS CdUnlockVolumeInternal(_In_ PIRP_CONTEXT IrpContext, _Inout_ PVCB Vcb, _In_opt_ PFILE_OBJECT FileObject)
#define CdReleaseCdData(IC)
#define CdUnlockVcb(IC, V)
#define CdAcquireVcbExclusive(IC, V, I)
#define IRP_CONTEXT_FLAG_WAIT
VOLUME_DEVICE_OBJECT * PVOLUME_DEVICE_OBJECT
#define _Analysis_assume_lock_not_held_(lock)
#define _Requires_lock_held_(lock)
#define _Releases_nonreentrant_lock_(lock)
#define _Analysis_suppress_lock_checking_(lock)
#define NT_SUCCESS(StatCode)
NTSTATUS NTAPI CdPnpCompletionRoutine(_In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp, _In_reads_opt_(_Inexpressible_("varies")) PVOID Contxt)
_In_ PIO_STACK_LOCATION IrpSp
#define KeWaitForSingleObject(pEvt, foo, a, b, c)
#define KeInitializeEvent(pEvt, foo, foo2)
#define KeSetEvent(pEvt, foo, foo2)
#define IoSetCompletionRoutine(_Irp, _CompletionRoutine, _Context, _InvokeOnSuccess, _InvokeOnError, _InvokeOnCancel)
#define _In_reads_opt_(s)
#define _Analysis_assume_
#define UNREFERENCED_PARAMETER(P)
#define IRP_MN_SURPRISE_REMOVAL
#define IoSkipCurrentIrpStackLocation(Irp)
#define IoCopyCurrentIrpStackLocationToNext(Irp)
#define STATUS_MORE_PROCESSING_REQUIRED
PDEVICE_OBJECT DeviceObject
DEVICE_OBJECT DeviceObject
#define STATUS_INVALID_PARAMETER
#define STATUS_DEVICE_BUSY
_In_ PDEVICE_OBJECT DeviceObject
#define IRP_MN_REMOVE_DEVICE
#define IRP_MN_CANCEL_REMOVE_DEVICE
#define IRP_MN_QUERY_REMOVE_DEVICE