44 ListHead = &
Fcb->PendingIrpQueue;
48 NextEntry = ListHead->
Flink;
52 NextEntry =
Irp->Tail.Overlay.ListEntry.
Flink;
55 for (; NextEntry != ListHead; NextEntry = NextEntry->
Flink)
105 Irp->IoStatus.Information = 0;
VOID NTAPI MsfsReleaseLock(PIO_CSQ Csq, KIRQL Irql)
VOID NTAPI MsfsTimeout(PKDPC Dpc, PVOID DeferredContext, PVOID SystemArgument1, PVOID SystemArgument2)
_Must_inspect_result_ _In_ PWDF_DPC_CONFIG _In_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFDPC * Dpc
VOID NTAPI MsfsRemoveIrp(PIO_CSQ Csq, PIRP Irp)
#define UNREFERENCED_PARAMETER(P)
VOID NTAPI KeAcquireSpinLock(PKSPIN_LOCK SpinLock, PKIRQL OldIrql)
VOID NTAPI MsfsCompleteCanceledIrp(PIO_CSQ Csq, PIRP Irp)
#define InsertTailList(ListHead, Entry)
LONG NTAPI KeSetEvent(IN PKEVENT Event, IN KPRIORITY Increment, IN BOOLEAN Wait)
FORCEINLINE BOOLEAN RemoveEntryList(_In_ PLIST_ENTRY Entry)
_In_ WDFREQUEST _In_ PIO_STACK_LOCATION Stack
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
#define IoCompleteRequest
PIRP NTAPI MsfsPeekNextIrp(PIO_CSQ Csq, PIRP Irp, PVOID PeekContext)
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)
_In_opt_ PVOID _In_opt_ PVOID SystemArgument1
struct _LIST_ENTRY * Flink
_In_opt_ PVOID _In_opt_ PVOID _In_opt_ PVOID SystemArgument2
__drv_aliasesMem FORCEINLINE PIO_STACK_LOCATION IoGetCurrentIrpStackLocation(_In_ PIRP Irp)
VOID NTAPI MsfsInsertIrp(PIO_CSQ Csq, PIRP Irp)
#define KeReleaseSpinLock(sl, irql)
#define STATUS_IO_TIMEOUT
_In_opt_ PIRP _In_opt_ PVOID PeekContext
struct tagContext Context
struct _MSFS_DPC_CTX * PMSFS_DPC_CTX
VOID NTAPI MsfsAcquireLock(PIO_CSQ Csq, PKIRQL Irql)
#define ExFreePoolWithTag(_P, _T)
NTKERNELAPI PIRP NTAPI IoCsqRemoveIrp(_Inout_ PIO_CSQ Csq, _Inout_ PIO_CSQ_IRP_CONTEXT Context)
Remove anb IRP from the queue.
_In_opt_ PVOID DeferredContext