- Add CcFastMdlReadWait extern to ntifs.h
authorAlex Ionescu <aionescu@gmail.com>
Sun, 12 Nov 2006 22:27:10 +0000 (22:27 +0000)
committerAlex Ionescu <aionescu@gmail.com>
Sun, 12 Nov 2006 22:27:10 +0000 (22:27 +0000)
- Add FsRtlCompleteRequest macro to ntifs.h
- Add LDRP_DRIVER_VERIFYING flag to ldrtypes.h
- Add MM_DRIVER_VERIFIER_DATA and DRIVER_SPECIFIED_DRIVER_THUNKS to mmtypes.h
- Add MAXLONGLONG to ntdef.h.

svn path=/trunk/; revision=24729

reactos/include/ddk/ntifs.h
reactos/include/ndk/ldrtypes.h
reactos/include/ndk/mmtypes.h
reactos/include/psdk/ntdef.h

index f7cb609..30ec249 100644 (file)
@@ -2006,6 +2006,8 @@ CcInitializeCacheMap (
     (((PSECTION_OBJECT_POINTERS)(FO)->SectionObjectPointer)->SharedCacheMap != NULL) \
 )
 
+extern ULONG CcFastMdlReadWait;
+
 NTKERNELAPI
 BOOLEAN
 NTAPI
@@ -2579,6 +2581,11 @@ FsRtlDoesNameContainWildCards (
     IN PUNICODE_STRING Name
 );
 
+#define FsRtlCompleteRequest(IRP,STATUS) {         \
+    (IRP)->IoStatus.Status = (STATUS);             \
+    IoCompleteRequest( (IRP), IO_DISK_INCREMENT ); \
+}
+
 #define FsRtlEnterFileSystem    KeEnterCriticalRegion
 
 #define FsRtlExitFileSystem     KeLeaveCriticalRegion
index 97b4df3..c1a742a 100644 (file)
@@ -49,6 +49,7 @@ Author:
 #define LDRP_IMAGE_NOT_AT_BASE                  0x00200000
 #define LDRP_COR_IMAGE                          0x00400000
 #define LDR_COR_OWNS_UNMAP                      0x00800000
+#define LDRP_DRIVER_VERIFYING                   0x02000000
 #define LDRP_REDIRECTED                         0x10000000
 
 //
index f440545..88d1a67 100644 (file)
@@ -606,6 +606,50 @@ typedef struct _MEMORY_BASIC_INFORMATION
     ULONG Type;
 } MEMORY_BASIC_INFORMATION,*PMEMORY_BASIC_INFORMATION;
 
+//
+// Driver Verifier Data
+//
+typedef struct _MM_DRIVER_VERIFIER_DATA
+{
+    ULONG Level;
+    ULONG RaiseIrqls;
+    ULONG AcquireSpinLocks;
+    ULONG SynchronizeExecutions;
+    ULONG AllocationsAttempted;
+    ULONG AllocationsSucceeded;
+    ULONG AllocationsSucceededSpecialPool;
+    ULONG AllocationsWithNoTag;
+    ULONG TrimRequests;
+    ULONG Trims;
+    ULONG AllocationsFailed;
+    ULONG AllocationsFailedDeliberately;
+    ULONG Loads;
+    ULONG Unloads;
+    ULONG UnTrackedPool;
+    ULONG UserTrims;
+    ULONG CurrentPagedPoolAllocations;
+    ULONG CurrentNonPagedPoolAllocations;
+    ULONG PeakPagedPoolAllocations;
+    ULONG PeakNonPagedPoolAllocations;
+    ULONG PagedBytes;
+    ULONG NonPagedBytes;
+    ULONG PeakPagedBytes;
+    ULONG PeakNonPagedBytes;
+    ULONG BurstAllocationsFailedDeliberately;
+    ULONG SessionTrims;
+    ULONG Reserved[2];
+} MM_DRIVER_VERIFIER_DATA, *PMM_DRIVER_VERIFIER_DATA;
+
+//
+// Internal Driver Verifier Table Data
+//
+typedef struct _DRIVER_SPECIFIED_VERIFIER_THUNKS
+{
+    LIST_ENTRY ListEntry;
+    PLDR_DATA_TABLE_ENTRY DataTableEntry;
+    ULONG NumberOfThunks;
+} DRIVER_SPECIFIED_VERIFIER_THUNKS, *PDRIVER_SPECIFIED_VERIFIER_THUNKS;
+
 //
 // Default heap size values.  For user mode, these values are copied to a new
 // process's PEB by the kernel in MmCreatePeb.  In kernel mode, RtlCreateHeap
index ac49caa..02ed9b6 100644 (file)
@@ -105,7 +105,7 @@ typedef struct _OBJECT_ATTRIBUTES {
 #define MAXUCHAR  0xff
 #define MAXUSHORT 0xffff
 #define MAXULONG  0xffffffff
-
+#define MAXLONGLONG (0x7fffffffffffffffLL)
 #define C_ASSERT(e) extern char __C_ASSERT__[(e)?1:-1]
 
 #endif /* _NTDEF_H */