87 RtlZeroMemory((
AT), (BYTE_COUNT)); \
97 #define CollectReadStats(VCB,OPEN_TYPE,BYTE_COUNT) { \ 98 PFILESYSTEM_STATISTICS Stats = &(VCB)->Statistics[KeGetCurrentProcessorNumber() % FatData.NumberProcessors].Common; \ 99 if (((OPEN_TYPE) == UserFileOpen)) { \ 100 Stats->UserFileReads += 1; \ 101 Stats->UserFileReadBytes += (ULONG)(BYTE_COUNT); \ 102 } else if (((OPEN_TYPE) == VirtualVolumeFile || ((OPEN_TYPE) == DirectoryFile))) { \ 103 Stats->MetaDataReads += 1; \ 104 Stats->MetaDataReadBytes += (ULONG)(BYTE_COUNT); \ 110 #pragma alloc_text(PAGE, FatStackOverflowRead) 111 #pragma alloc_text(PAGE, FatPostStackOverflowRead) 112 #pragma alloc_text(PAGE, FatCommonRead) 248 Status = FatCommonRead( IrpContext,
Irp );
#define FsRtlEnterFileSystem
BOOLEAN FatIsIrpTopLevel(IN PIRP Irp)
_In_ NDIS_HANDLE _In_ PNDIS_PACKET Packet
#define FsRtlExitFileSystem
#define UNREFERENCED_PARAMETER(P)
#define FatDeviceIsFatFsdo(D)
#define DebugTrace(INDENT, LEVEL, X, Y)
VOID NTAPI FsRtlPostPagingFileStackOverflow(IN PVOID Context, IN PKEVENT Event, IN PFSRTL_STACK_OVERFLOW_ROUTINE StackOverflowRoutine)
NTSTATUS NTAPI KeWaitForSingleObject(IN PVOID Object, IN KWAIT_REASON WaitReason, IN KPROCESSOR_MODE WaitMode, IN BOOLEAN Alertable, IN PLARGE_INTEGER Timeout OPTIONAL)
IN PFCB IN PCCB IN TYPE_OF_OPEN IN BOOLEAN IN BOOLEAN TopLevel
_In_ PDEVICE_OBJECT DeviceObject
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
#define FCB_STATE_PAGING_FILE
VOID FatPagingFileIo(IN PIRP Irp, IN PFCB Fcb)
#define STATUS_INVALID_USER_BUFFER
_In_ PVOID _In_ ULONG Event
#define _SEH2_GetExceptionInformation()
#define EXCEPTION_EXECUTE_HANDLER
#define OVERFLOW_READ_THRESHHOLD
VOID NTAPI FatOverflowPagingFileRead(IN PVOID Context, IN PKEVENT Event)
PIRP_CONTEXT FatCreateIrpContext(IN PIRP Irp, IN BOOLEAN Wait)
VOID NTAPI IoSetTopLevelIrp(IN PIRP Irp)
DRIVER_DISPATCH(nfs41_FsdDispatch)
_Function_class_(IO_COMPLETION_ROUTINE)
__drv_aliasesMem FORCEINLINE PIO_STACK_LOCATION IoGetCurrentIrpStackLocation(_In_ PIRP Irp)
#define KeInitializeEvent(pEvt, foo, foo2)
ULONG FatExceptionFilter(IN PIRP_CONTEXT IrpContext, IN PEXCEPTION_POINTERS ExceptionPointer)
NTSTATUS FatCompleteMdl(IN PIRP_CONTEXT IrpContext, IN PIRP Irp)
#define _SEH2_EXCEPT(...)
#define _SEH2_GetExceptionCode()