From 9045db1026170ffb749c931cd0c5a81a218c95ea Mon Sep 17 00:00:00 2001 From: Bill Zissimopoulos Date: Thu, 19 Nov 2015 15:59:03 -0800 Subject: [PATCH] sys: FSP_ENTER_MJ, FSP_LEAVE_MJ --- src/sys/cleanup.c | 6 +- src/sys/close.c | 6 +- src/sys/create.c | 6 +- src/sys/debug.c | 139 +++++++++++++++++++++++++++++++++++++++++++-- src/sys/devctrl.c | 6 +- src/sys/dirctrl.c | 6 +- src/sys/driver.c | 4 +- src/sys/driver.h | 28 +++++++-- src/sys/ea.c | 12 ++-- src/sys/fileinfo.c | 12 ++-- src/sys/flush.c | 6 +- src/sys/fsctrl.c | 6 +- src/sys/lockctrl.c | 6 +- src/sys/read.c | 6 +- src/sys/security.c | 12 ++-- src/sys/shutdown.c | 6 +- src/sys/volinfo.c | 12 ++-- src/sys/write.c | 6 +- 18 files changed, 217 insertions(+), 68 deletions(-) diff --git a/src/sys/cleanup.c b/src/sys/cleanup.c index cd3cd099..dd773b89 100644 --- a/src/sys/cleanup.c +++ b/src/sys/cleanup.c @@ -17,9 +17,9 @@ FspCleanup( _In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp) { - FSP_ENTER(PAGED_CODE()); + FSP_ENTER_MJ(PAGED_CODE()); - ASSERT(IRP_MJ_CLEANUP == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); + ASSERT(IRP_MJ_CLEANUP == IrpSp->MajorFunction); if (FspFileSystemDeviceExtensionKind == FspDeviceExtension(DeviceObject)->Kind) { @@ -34,5 +34,5 @@ FspCleanup( IoCompleteRequest(Irp, IO_NO_INCREMENT); Result = STATUS_INVALID_DEVICE_REQUEST; - FSP_LEAVE("", 0); + FSP_LEAVE_MJ("", 0); } diff --git a/src/sys/close.c b/src/sys/close.c index 88dc1d5e..fa7c1cae 100644 --- a/src/sys/close.c +++ b/src/sys/close.c @@ -17,9 +17,9 @@ FspClose( _In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp) { - FSP_ENTER(PAGED_CODE()); + FSP_ENTER_MJ(PAGED_CODE()); - ASSERT(IRP_MJ_CLOSE == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); + ASSERT(IRP_MJ_CLOSE == IrpSp->MajorFunction); if (FspFileSystemDeviceExtensionKind == FspDeviceExtension(DeviceObject)->Kind) { @@ -34,5 +34,5 @@ FspClose( IoCompleteRequest(Irp, IO_NO_INCREMENT); Result = STATUS_INVALID_DEVICE_REQUEST; - FSP_LEAVE("", 0); + FSP_LEAVE_MJ("", 0); } diff --git a/src/sys/create.c b/src/sys/create.c index ea04a407..7e2876de 100644 --- a/src/sys/create.c +++ b/src/sys/create.c @@ -17,9 +17,9 @@ FspCreate( _In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp) { - FSP_ENTER(PAGED_CODE()); + FSP_ENTER_MJ(PAGED_CODE()); - ASSERT(IRP_MJ_CREATE == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); + ASSERT(IRP_MJ_CREATE == IrpSp->MajorFunction); if (FspFileSystemDeviceExtensionKind == FspDeviceExtension(DeviceObject)->Kind) { @@ -34,5 +34,5 @@ FspCreate( IoCompleteRequest(Irp, IO_NO_INCREMENT); Result = STATUS_INVALID_DEVICE_REQUEST; - FSP_LEAVE("", 0); + FSP_LEAVE_MJ("", 0); } diff --git a/src/sys/debug.c b/src/sys/debug.c index 6c6caeb5..39192f74 100644 --- a/src/sys/debug.c +++ b/src/sys/debug.c @@ -7,6 +7,9 @@ #include #if DBG +#define SYM(x) case x: return #x; +#define SYMBRC(x) case x: return "[" #x "]"; + static ANSI_STRING DbgBreakPointInc = RTL_CONSTANT_STRING("Fsp*"); BOOLEAN HasDbgBreakPoint(const char *Function) { @@ -22,12 +25,138 @@ const char *NtStatusSym(NTSTATUS Status) { switch (Status) { -#define SYM(x) case x: return #x; -/* cygwin: sed -n '/_WAIT_0/!s/^#define[ \t]*\(STATUS_[^ \t]*\).*NTSTATUS.*$/SYM(\1)/p' ntstatus.h >ntstatus.i */ -#include "ntstatus.i" -#undef SYM + /* cygwin: sed -n '/_WAIT_0/!s/^#define[ \t]*\(STATUS_[^ \t]*\).*NTSTATUS.*$/SYM(\1)/p' */ + #include "ntstatus.i" default: - return "UNKNOWN"; + return "NTSTATUS:Unknown"; + } +} + +const char *IrpMajorFunctionSym(UCHAR MajorFunction) +{ + switch (MajorFunction) + { + SYM(IRP_MJ_CREATE) + SYM(IRP_MJ_CREATE_NAMED_PIPE) + SYM(IRP_MJ_CLOSE) + SYM(IRP_MJ_READ) + SYM(IRP_MJ_WRITE) + SYM(IRP_MJ_QUERY_INFORMATION) + SYM(IRP_MJ_SET_INFORMATION) + SYM(IRP_MJ_QUERY_EA) + SYM(IRP_MJ_SET_EA) + SYM(IRP_MJ_FLUSH_BUFFERS) + SYM(IRP_MJ_QUERY_VOLUME_INFORMATION) + SYM(IRP_MJ_SET_VOLUME_INFORMATION) + SYM(IRP_MJ_DIRECTORY_CONTROL) + SYM(IRP_MJ_FILE_SYSTEM_CONTROL) + SYM(IRP_MJ_DEVICE_CONTROL) + SYM(IRP_MJ_INTERNAL_DEVICE_CONTROL) + SYM(IRP_MJ_SHUTDOWN) + SYM(IRP_MJ_LOCK_CONTROL) + SYM(IRP_MJ_CLEANUP) + SYM(IRP_MJ_CREATE_MAILSLOT) + SYM(IRP_MJ_QUERY_SECURITY) + SYM(IRP_MJ_SET_SECURITY) + SYM(IRP_MJ_POWER) + SYM(IRP_MJ_SYSTEM_CONTROL) + SYM(IRP_MJ_DEVICE_CHANGE) + SYM(IRP_MJ_QUERY_QUOTA) + SYM(IRP_MJ_SET_QUOTA) + SYM(IRP_MJ_PNP) + default: + return "IRP_MJ:Unknown"; + } +} + +const char *IrpMinorFunctionSym(UCHAR MajorFunction, UCHAR MinorFunction) +{ + switch (MajorFunction) + { + case IRP_MJ_READ: + case IRP_MJ_WRITE: + switch (MinorFunction) + { + SYMBRC(IRP_MN_NORMAL) + SYMBRC(IRP_MN_DPC) + SYMBRC(IRP_MN_MDL) + SYMBRC(IRP_MN_COMPLETE) + SYMBRC(IRP_MN_COMPRESSED) + SYMBRC(IRP_MN_MDL_DPC) + SYMBRC(IRP_MN_COMPLETE_MDL) + SYMBRC(IRP_MN_COMPLETE_MDL_DPC) + default: + return "[Unknown]"; + } + case IRP_MJ_DIRECTORY_CONTROL: + switch (MinorFunction) + { + SYMBRC(IRP_MN_QUERY_DIRECTORY) + SYMBRC(IRP_MN_NOTIFY_CHANGE_DIRECTORY) + default: + return "[Unknown]"; + } + case IRP_MJ_FILE_SYSTEM_CONTROL: + switch (MinorFunction) + { + SYMBRC(IRP_MN_USER_FS_REQUEST) + SYMBRC(IRP_MN_MOUNT_VOLUME) + SYMBRC(IRP_MN_VERIFY_VOLUME) + SYMBRC(IRP_MN_LOAD_FILE_SYSTEM) + SYMBRC(IRP_MN_KERNEL_CALL) + default: + return "[Unknown]"; + } + case IRP_MJ_LOCK_CONTROL: + switch (MinorFunction) + { + SYMBRC(IRP_MN_LOCK) + SYMBRC(IRP_MN_UNLOCK_SINGLE) + SYMBRC(IRP_MN_UNLOCK_ALL) + SYMBRC(IRP_MN_UNLOCK_ALL_BY_KEY) + default: + return "[Unknown]"; + } + case IRP_MJ_POWER: + switch (MinorFunction) + { + SYMBRC(IRP_MN_WAIT_WAKE) + SYMBRC(IRP_MN_POWER_SEQUENCE) + SYMBRC(IRP_MN_SET_POWER) + SYMBRC(IRP_MN_QUERY_POWER) + default: + return "[Unknown]"; + } + case IRP_MJ_SYSTEM_CONTROL: + switch (MinorFunction) + { + SYMBRC(IRP_MN_QUERY_ALL_DATA) + SYMBRC(IRP_MN_QUERY_SINGLE_INSTANCE) + SYMBRC(IRP_MN_CHANGE_SINGLE_INSTANCE) + SYMBRC(IRP_MN_CHANGE_SINGLE_ITEM) + SYMBRC(IRP_MN_ENABLE_EVENTS) + SYMBRC(IRP_MN_DISABLE_EVENTS) + SYMBRC(IRP_MN_ENABLE_COLLECTION) + SYMBRC(IRP_MN_DISABLE_COLLECTION) + SYMBRC(IRP_MN_REGINFO) + SYMBRC(IRP_MN_EXECUTE_METHOD) + SYMBRC(IRP_MN_REGINFO_EX) + default: + return "[Unknown]"; + } + case IRP_MJ_PNP: + switch (MinorFunction) + { + SYMBRC(IRP_MN_START_DEVICE) + SYMBRC(IRP_MN_QUERY_REMOVE_DEVICE) + SYMBRC(IRP_MN_REMOVE_DEVICE) + SYMBRC(IRP_MN_CANCEL_REMOVE_DEVICE) + SYMBRC(IRP_MN_SURPRISE_REMOVAL) + default: + return "[Unknown]"; + } + default: + return ""; } } #endif diff --git a/src/sys/devctrl.c b/src/sys/devctrl.c index ece5a391..708221dc 100644 --- a/src/sys/devctrl.c +++ b/src/sys/devctrl.c @@ -17,13 +17,13 @@ FspDeviceControl( _In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp) { - FSP_ENTER(PAGED_CODE()); + FSP_ENTER_MJ(PAGED_CODE()); - ASSERT(IRP_MJ_DEVICE_CONTROL == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); + ASSERT(IRP_MJ_DEVICE_CONTROL == IrpSp->MajorFunction); Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; IoCompleteRequest(Irp, IO_NO_INCREMENT); Result = STATUS_INVALID_DEVICE_REQUEST; - FSP_LEAVE("", 0); + FSP_LEAVE_MJ("", 0); } diff --git a/src/sys/dirctrl.c b/src/sys/dirctrl.c index 8baafc4f..771bf5b3 100644 --- a/src/sys/dirctrl.c +++ b/src/sys/dirctrl.c @@ -17,13 +17,13 @@ FspDirectoryControl( _In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp) { - FSP_ENTER(PAGED_CODE()); + FSP_ENTER_MJ(PAGED_CODE()); - ASSERT(IRP_MJ_DIRECTORY_CONTROL == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); + ASSERT(IRP_MJ_DIRECTORY_CONTROL == IrpSp->MajorFunction); Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; IoCompleteRequest(Irp, IO_NO_INCREMENT); Result = STATUS_INVALID_DEVICE_REQUEST; - FSP_LEAVE("", 0); + FSP_LEAVE_MJ("", 0); } diff --git a/src/sys/driver.c b/src/sys/driver.c index e86ac25d..b93ed91e 100644 --- a/src/sys/driver.c +++ b/src/sys/driver.c @@ -100,7 +100,7 @@ DriverEntry( */ IoRegisterFileSystem(FspFileSystemDeviceObject); - FSP_LEAVE("DriverObject->DriverName=\"%wZ\", RegistryPath=\"%wZ\"", + FSP_LEAVE("DriverName=\"%wZ\", RegistryPath=\"%wZ\"", &DriverObject->DriverName, RegistryPath); } @@ -116,7 +116,7 @@ FspUnload( FspFileSystemDeviceObject = 0; } - FSP_LEAVE_VOID("DriverObject->DriverName=\"%wZ\"", + FSP_LEAVE_VOID("DriverName=\"%wZ\"", &DriverObject->DriverName); } diff --git a/src/sys/driver.h b/src/sys/driver.h index 74d67a0c..7db6a292 100644 --- a/src/sys/driver.h +++ b/src/sys/driver.h @@ -22,8 +22,6 @@ /* enter/leave*/ #if DBG -BOOLEAN HasDbgBreakPoint(const char *Function); -const char *NtStatusSym(NTSTATUS Status); #define FSP_DEBUGLOG_(rfmt, r, fmt, ...)\ DbgPrint(AbnormalTermination() ? \ DRIVER_NAME "!" __FUNCTION__ "(" fmt ") = !AbnormalTermination\n" :\ @@ -58,6 +56,20 @@ const char *NtStatusSym(NTSTATUS Status); NTSTATUS Result = STATUS_SUCCESS; FSP_ENTER_(__VA_ARGS__) #define FSP_LEAVE(fmt, ...) \ FSP_LEAVE_(" = %s", NtStatusSym(Result), fmt, __VA_ARGS__); return Result +#define FSP_ENTER_MJ(...) \ + NTSTATUS Result = STATUS_SUCCESS; \ + PIO_STACK_LOCATION IrpSp = IoGetCurrentIrpStackLocation(Irp);(void)IrpSp;\ + FSP_ENTER_(__VA_ARGS__) +#define FSP_LEAVE_MJ(fmt, ...) \ + FSP_LEAVE_(" = %s", NtStatusSym(Result),\ + "'%c', %s%s, Flags=%x, " \ + fmt, \ + FspDeviceExtension(DeviceObject)->Kind,\ + IrpMajorFunctionSym(IrpSp->MajorFunction),\ + IrpMinorFunctionSym(IrpSp->MajorFunction, IrpSp->MajorFunction),\ + IrpSp->Flags, \ + __VA_ARGS__); \ + return Result #define FSP_ENTER_BOOL(...) \ BOOLEAN Result = TRUE; FSP_ENTER_(__VA_ARGS__) #define FSP_LEAVE_BOOL(fmt, ...) \ @@ -76,8 +88,8 @@ const char *NtStatusSym(NTSTATUS Status); /* types */ enum { - FspFileSystemDeviceExtensionKind = 0, - FspVolumeDeviceExtensionKind, + FspFileSystemDeviceExtensionKind = 'F', + FspVolumeDeviceExtensionKind = 'V', }; typedef struct { @@ -139,6 +151,14 @@ FAST_IO_RELEASE_FOR_MOD_WRITE FspReleaseForModWrite; FAST_IO_ACQUIRE_FOR_CCFLUSH FspAcquireForCcFlush; FAST_IO_RELEASE_FOR_CCFLUSH FspReleaseForCcFlush; +/* debug */ +#if DBG +BOOLEAN HasDbgBreakPoint(const char *Function); +const char *NtStatusSym(NTSTATUS Status); +const char *IrpMajorFunctionSym(UCHAR MajorFunction); +const char *IrpMinorFunctionSym(UCHAR MajorFunction, UCHAR MinorFunction); +#endif + /* extern */ extern PDEVICE_OBJECT FspFileSystemDeviceObject; diff --git a/src/sys/ea.c b/src/sys/ea.c index 9646fe8b..dd74890e 100644 --- a/src/sys/ea.c +++ b/src/sys/ea.c @@ -19,15 +19,15 @@ FspQueryEa( _In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp) { - FSP_ENTER(PAGED_CODE()); + FSP_ENTER_MJ(PAGED_CODE()); - ASSERT(IRP_MJ_QUERY_EA == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); + ASSERT(IRP_MJ_QUERY_EA == IrpSp->MajorFunction); Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; IoCompleteRequest(Irp, IO_NO_INCREMENT); Result = STATUS_INVALID_DEVICE_REQUEST; - FSP_LEAVE("", 0); + FSP_LEAVE_MJ("", 0); } NTSTATUS @@ -35,13 +35,13 @@ FspSetEa( _In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp) { - FSP_ENTER(PAGED_CODE()); + FSP_ENTER_MJ(PAGED_CODE()); - ASSERT(IRP_MJ_SET_EA == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); + ASSERT(IRP_MJ_SET_EA == IrpSp->MajorFunction); Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; IoCompleteRequest(Irp, IO_NO_INCREMENT); Result = STATUS_INVALID_DEVICE_REQUEST; - FSP_LEAVE("", 0); + FSP_LEAVE_MJ("", 0); } diff --git a/src/sys/fileinfo.c b/src/sys/fileinfo.c index f73e6be5..ff70335d 100644 --- a/src/sys/fileinfo.c +++ b/src/sys/fileinfo.c @@ -19,15 +19,15 @@ FspQueryInformation( _In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp) { - FSP_ENTER(PAGED_CODE()); + FSP_ENTER_MJ(PAGED_CODE()); - ASSERT(IRP_MJ_QUERY_INFORMATION == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); + ASSERT(IRP_MJ_QUERY_INFORMATION == IrpSp->MajorFunction); Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; IoCompleteRequest(Irp, IO_NO_INCREMENT); Result = STATUS_INVALID_DEVICE_REQUEST; - FSP_LEAVE("", 0); + FSP_LEAVE_MJ("", 0); } NTSTATUS @@ -35,13 +35,13 @@ FspSetInformation( _In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp) { - FSP_ENTER(PAGED_CODE()); + FSP_ENTER_MJ(PAGED_CODE()); - ASSERT(IRP_MJ_SET_INFORMATION == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); + ASSERT(IRP_MJ_SET_INFORMATION == IrpSp->MajorFunction); Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; IoCompleteRequest(Irp, IO_NO_INCREMENT); Result = STATUS_INVALID_DEVICE_REQUEST; - FSP_LEAVE("", 0); + FSP_LEAVE_MJ("", 0); } diff --git a/src/sys/flush.c b/src/sys/flush.c index 422c8c89..8284949d 100644 --- a/src/sys/flush.c +++ b/src/sys/flush.c @@ -17,13 +17,13 @@ FspFlushBuffers( _In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp) { - FSP_ENTER(PAGED_CODE()); + FSP_ENTER_MJ(PAGED_CODE()); - ASSERT(IRP_MJ_FLUSH_BUFFERS == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); + ASSERT(IRP_MJ_FLUSH_BUFFERS == IrpSp->MajorFunction); Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; IoCompleteRequest(Irp, IO_NO_INCREMENT); Result = STATUS_INVALID_DEVICE_REQUEST; - FSP_LEAVE("", 0); + FSP_LEAVE_MJ("", 0); } diff --git a/src/sys/fsctrl.c b/src/sys/fsctrl.c index d309465b..6a1adf53 100644 --- a/src/sys/fsctrl.c +++ b/src/sys/fsctrl.c @@ -17,13 +17,13 @@ FspFileSystemControl( _In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp) { - FSP_ENTER(PAGED_CODE()); + FSP_ENTER_MJ(PAGED_CODE()); - ASSERT(IRP_MJ_FILE_SYSTEM_CONTROL == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); + ASSERT(IRP_MJ_FILE_SYSTEM_CONTROL == IrpSp->MajorFunction); Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; IoCompleteRequest(Irp, IO_NO_INCREMENT); Result = STATUS_INVALID_DEVICE_REQUEST; - FSP_LEAVE("", 0); + FSP_LEAVE_MJ("", 0); } diff --git a/src/sys/lockctrl.c b/src/sys/lockctrl.c index 7a9b7639..32bbc35f 100644 --- a/src/sys/lockctrl.c +++ b/src/sys/lockctrl.c @@ -17,13 +17,13 @@ FspLockControl( _In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp) { - FSP_ENTER(PAGED_CODE()); + FSP_ENTER_MJ(PAGED_CODE()); - ASSERT(IRP_MJ_LOCK_CONTROL == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); + ASSERT(IRP_MJ_LOCK_CONTROL == IrpSp->MajorFunction); Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; IoCompleteRequest(Irp, IO_NO_INCREMENT); Result = STATUS_INVALID_DEVICE_REQUEST; - FSP_LEAVE("", 0); + FSP_LEAVE_MJ("", 0); } diff --git a/src/sys/read.c b/src/sys/read.c index f037bf11..680a9fc0 100644 --- a/src/sys/read.c +++ b/src/sys/read.c @@ -17,13 +17,13 @@ FspRead( _In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp) { - FSP_ENTER(PAGED_CODE()); + FSP_ENTER_MJ(PAGED_CODE()); - ASSERT(IRP_MJ_READ == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); + ASSERT(IRP_MJ_READ == IrpSp->MajorFunction); Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; IoCompleteRequest(Irp, IO_NO_INCREMENT); Result = STATUS_INVALID_DEVICE_REQUEST; - FSP_LEAVE("", 0); + FSP_LEAVE_MJ("", 0); } diff --git a/src/sys/security.c b/src/sys/security.c index 952ceac0..19bfa2a7 100644 --- a/src/sys/security.c +++ b/src/sys/security.c @@ -19,15 +19,15 @@ FspQuerySecurity( _In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp) { - FSP_ENTER(PAGED_CODE()); + FSP_ENTER_MJ(PAGED_CODE()); - ASSERT(IRP_MJ_QUERY_SECURITY == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); + ASSERT(IRP_MJ_QUERY_SECURITY == IrpSp->MajorFunction); Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; IoCompleteRequest(Irp, IO_NO_INCREMENT); Result = STATUS_INVALID_DEVICE_REQUEST; - FSP_LEAVE("", 0); + FSP_LEAVE_MJ("", 0); } NTSTATUS @@ -35,13 +35,13 @@ FspSetSecurity( _In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp) { - FSP_ENTER(PAGED_CODE()); + FSP_ENTER_MJ(PAGED_CODE()); - ASSERT(IRP_MJ_SET_SECURITY == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); + ASSERT(IRP_MJ_SET_SECURITY == IrpSp->MajorFunction); Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; IoCompleteRequest(Irp, IO_NO_INCREMENT); Result = STATUS_INVALID_DEVICE_REQUEST; - FSP_LEAVE("", 0); + FSP_LEAVE_MJ("", 0); } diff --git a/src/sys/shutdown.c b/src/sys/shutdown.c index 67c16238..c692947d 100644 --- a/src/sys/shutdown.c +++ b/src/sys/shutdown.c @@ -17,13 +17,13 @@ FspShutdown( _In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp) { - FSP_ENTER(PAGED_CODE()); + FSP_ENTER_MJ(PAGED_CODE()); - ASSERT(IRP_MJ_SHUTDOWN == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); + ASSERT(IRP_MJ_SHUTDOWN == IrpSp->MajorFunction); Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; IoCompleteRequest(Irp, IO_NO_INCREMENT); Result = STATUS_INVALID_DEVICE_REQUEST; - FSP_LEAVE("", 0); + FSP_LEAVE_MJ("", 0); } diff --git a/src/sys/volinfo.c b/src/sys/volinfo.c index 2983342a..fbfa3242 100644 --- a/src/sys/volinfo.c +++ b/src/sys/volinfo.c @@ -19,15 +19,15 @@ FspQueryVolumeInformation( _In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp) { - FSP_ENTER(PAGED_CODE()); + FSP_ENTER_MJ(PAGED_CODE()); - ASSERT(IRP_MJ_QUERY_VOLUME_INFORMATION == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); + ASSERT(IRP_MJ_QUERY_VOLUME_INFORMATION == IrpSp->MajorFunction); Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; IoCompleteRequest(Irp, IO_NO_INCREMENT); Result = STATUS_INVALID_DEVICE_REQUEST; - FSP_LEAVE("", 0); + FSP_LEAVE_MJ("", 0); } NTSTATUS @@ -35,13 +35,13 @@ FspSetVolumeInformation( _In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp) { - FSP_ENTER(PAGED_CODE()); + FSP_ENTER_MJ(PAGED_CODE()); - ASSERT(IRP_MJ_SET_VOLUME_INFORMATION == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); + ASSERT(IRP_MJ_SET_VOLUME_INFORMATION == IrpSp->MajorFunction); Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; IoCompleteRequest(Irp, IO_NO_INCREMENT); Result = STATUS_INVALID_DEVICE_REQUEST; - FSP_LEAVE("", 0); + FSP_LEAVE_MJ("", 0); } diff --git a/src/sys/write.c b/src/sys/write.c index 14fdddfc..386b352c 100644 --- a/src/sys/write.c +++ b/src/sys/write.c @@ -17,13 +17,13 @@ FspWrite( _In_ PDEVICE_OBJECT DeviceObject, _In_ PIRP Irp) { - FSP_ENTER(PAGED_CODE()); + FSP_ENTER_MJ(PAGED_CODE()); - ASSERT(IRP_MJ_WRITE == IoGetCurrentIrpStackLocation(Irp)->MajorFunction); + ASSERT(IRP_MJ_WRITE == IrpSp->MajorFunction); Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST; IoCompleteRequest(Irp, IO_NO_INCREMENT); Result = STATUS_INVALID_DEVICE_REQUEST; - FSP_LEAVE("", 0); + FSP_LEAVE_MJ("", 0); }