- Move more stuff to wdm.h

- Fix KBUGCHECK_CALLBACK_REASON
- Add missing KDPC_IMPORTANCE member

svn path=/branches/header-work/; revision=45751
This commit is contained in:
Amine Khaldi 2010-03-01 21:46:34 +00:00
parent 5bf6e1937a
commit 74f31b099a
2 changed files with 111 additions and 100 deletions

View file

@ -1022,6 +1022,34 @@ typedef enum _KWAIT_REASON {
MaximumWaitReason MaximumWaitReason
} KWAIT_REASON; } KWAIT_REASON;
typedef struct _KWAIT_BLOCK {
LIST_ENTRY WaitListEntry;
struct _KTHREAD *Thread;
PVOID Object;
struct _KWAIT_BLOCK *NextWaitBlock;
USHORT WaitKey;
UCHAR WaitType;
volatile UCHAR BlockState;
#if defined(_WIN64)
LONG SpareLong;
#endif
} KWAIT_BLOCK, *PKWAIT_BLOCK, *PRKWAIT_BLOCK;
typedef enum _KINTERRUPT_MODE {
LevelSensitive,
Latched
} KINTERRUPT_MODE;
#define THREAD_WAIT_OBJECTS 3
typedef VOID
(DDKAPI *PKINTERRUPT_ROUTINE)(
VOID);
typedef enum _KD_OPTION { typedef enum _KD_OPTION {
KD_OPTION_SET_BLOCK_ENABLE, KD_OPTION_SET_BLOCK_ENABLE,
} KD_OPTION; } KD_OPTION;
@ -2685,6 +2713,20 @@ typedef struct _PCI_COMMON_CONFIG {
#endif #endif
typedef enum _CREATE_FILE_TYPE {
CreateFileTypeNone,
CreateFileTypeNamedPipe,
CreateFileTypeMailslot
} CREATE_FILE_TYPE;
#define IO_FORCE_ACCESS_CHECK 0x001
#define IO_NO_PARAMETER_CHECKING 0x100
#define IO_REPARSE 0x0
#define IO_REMOUNT 0x1
typedef struct _PCI_SLOT_NUMBER { typedef struct _PCI_SLOT_NUMBER {
union { union {
struct { struct {
@ -5597,6 +5639,75 @@ RtlCheckBit(
* Executive Types * * Executive Types *
******************************************************************************/ ******************************************************************************/
typedef enum _KBUGCHECK_CALLBACK_REASON {
KbCallbackInvalid,
KbCallbackReserved1,
KbCallbackSecondaryDumpData,
KbCallbackDumpIo,
KbCallbackAddPages
} KBUGCHECK_CALLBACK_REASON;
struct _KBUGCHECK_REASON_CALLBACK_RECORD;
typedef VOID
(DDKAPI *PKBUGCHECK_REASON_CALLBACK_ROUTINE)(
IN KBUGCHECK_CALLBACK_REASON Reason,
IN struct _KBUGCHECK_REASON_CALLBACK_RECORD *Record,
IN OUT PVOID ReasonSpecificData,
IN ULONG ReasonSpecificDataLength);
typedef struct _KBUGCHECK_REASON_CALLBACK_RECORD {
LIST_ENTRY Entry;
PKBUGCHECK_REASON_CALLBACK_ROUTINE CallbackRoutine;
PUCHAR Component;
ULONG_PTR Checksum;
KBUGCHECK_CALLBACK_REASON Reason;
UCHAR State;
} KBUGCHECK_REASON_CALLBACK_RECORD, *PKBUGCHECK_REASON_CALLBACK_RECORD;
typedef enum _KBUGCHECK_BUFFER_DUMP_STATE {
BufferEmpty,
BufferInserted,
BufferStarted,
BufferFinished,
BufferIncomplete
} KBUGCHECK_BUFFER_DUMP_STATE;
typedef VOID
(DDKAPI *PKBUGCHECK_CALLBACK_ROUTINE)(
IN PVOID Buffer,
IN ULONG Length);
typedef struct _KBUGCHECK_CALLBACK_RECORD {
LIST_ENTRY Entry;
PKBUGCHECK_CALLBACK_ROUTINE CallbackRoutine;
PVOID Buffer;
ULONG Length;
PUCHAR Component;
ULONG_PTR Checksum;
UCHAR State;
} KBUGCHECK_CALLBACK_RECORD, *PKBUGCHECK_CALLBACK_RECORD;
typedef BOOLEAN
(DDKAPI *PNMI_CALLBACK)(
IN PVOID Context,
IN BOOLEAN Handled);
/*
* VOID
* KeInitializeCallbackRecord(
* IN PKBUGCHECK_CALLBACK_RECORD CallbackRecord)
*/
#define KeInitializeCallbackRecord(CallbackRecord) \
CallbackRecord->State = BufferEmpty;
typedef enum _KDPC_IMPORTANCE {
LowImportance,
MediumImportance,
HighImportance,
MediumHighImportance
} KDPC_IMPORTANCE;
typedef enum _POOL_TYPE { typedef enum _POOL_TYPE {
NonPagedPool, NonPagedPool,
PagedPool, PagedPool,

View file

@ -1241,33 +1241,6 @@ typedef enum _EVENT_TYPE {
SynchronizationEvent SynchronizationEvent
} EVENT_TYPE; } EVENT_TYPE;
typedef struct _KWAIT_BLOCK {
LIST_ENTRY WaitListEntry;
struct _KTHREAD * RESTRICTED_POINTER Thread;
PVOID Object;
struct _KWAIT_BLOCK * RESTRICTED_POINTER NextWaitBlock;
USHORT WaitKey;
UCHAR WaitType;
UCHAR SpareByte;
} KWAIT_BLOCK, *PKWAIT_BLOCK, *RESTRICTED_POINTER PRKWAIT_BLOCK;
typedef enum _KINTERRUPT_MODE {
LevelSensitive,
Latched
} KINTERRUPT_MODE;
#define THREAD_WAIT_OBJECTS 3
typedef VOID
(DDKAPI *PKINTERRUPT_ROUTINE)(
VOID);
typedef enum _CREATE_FILE_TYPE {
CreateFileTypeNone,
CreateFileTypeNamedPipe,
CreateFileTypeMailslot
} CREATE_FILE_TYPE;
typedef struct _CONFIGURATION_INFORMATION { typedef struct _CONFIGURATION_INFORMATION {
ULONG DiskCount; ULONG DiskCount;
ULONG FloppyCount; ULONG FloppyCount;
@ -1327,12 +1300,6 @@ typedef enum _CONFIGURATION_TYPE {
MaximumType MaximumType
} CONFIGURATION_TYPE, *PCONFIGURATION_TYPE; } CONFIGURATION_TYPE, *PCONFIGURATION_TYPE;
#define IO_FORCE_ACCESS_CHECK 0x001
#define IO_NO_PARAMETER_CHECKING 0x100
#define IO_REPARSE 0x0
#define IO_REMOUNT 0x1
typedef NTSTATUS typedef NTSTATUS
(DDKAPI *PIO_QUERY_DEVICE_ROUTINE)( (DDKAPI *PIO_QUERY_DEVICE_ROUTINE)(
IN PVOID Context, IN PVOID Context,
@ -1354,73 +1321,6 @@ typedef enum _IO_QUERY_DEVICE_DATA_FORMAT {
IoQueryDeviceMaxData IoQueryDeviceMaxData
} IO_QUERY_DEVICE_DATA_FORMAT, *PIO_QUERY_DEVICE_DATA_FORMAT; } IO_QUERY_DEVICE_DATA_FORMAT, *PIO_QUERY_DEVICE_DATA_FORMAT;
typedef enum _KBUGCHECK_CALLBACK_REASON {
KbCallbackInvalid,
KbCallbackReserved1,
KbCallbackSecondaryDumpData,
KbCallbackDumpIo,
} KBUGCHECK_CALLBACK_REASON;
struct _KBUGCHECK_REASON_CALLBACK_RECORD;
typedef VOID
(DDKAPI *PKBUGCHECK_REASON_CALLBACK_ROUTINE)(
IN KBUGCHECK_CALLBACK_REASON Reason,
IN struct _KBUGCHECK_REASON_CALLBACK_RECORD *Record,
IN OUT PVOID ReasonSpecificData,
IN ULONG ReasonSpecificDataLength);
typedef struct _KBUGCHECK_REASON_CALLBACK_RECORD {
LIST_ENTRY Entry;
PKBUGCHECK_REASON_CALLBACK_ROUTINE CallbackRoutine;
PUCHAR Component;
ULONG_PTR Checksum;
KBUGCHECK_CALLBACK_REASON Reason;
UCHAR State;
} KBUGCHECK_REASON_CALLBACK_RECORD, *PKBUGCHECK_REASON_CALLBACK_RECORD;
typedef enum _KBUGCHECK_BUFFER_DUMP_STATE {
BufferEmpty,
BufferInserted,
BufferStarted,
BufferFinished,
BufferIncomplete
} KBUGCHECK_BUFFER_DUMP_STATE;
typedef VOID
(DDKAPI *PKBUGCHECK_CALLBACK_ROUTINE)(
IN PVOID Buffer,
IN ULONG Length);
typedef struct _KBUGCHECK_CALLBACK_RECORD {
LIST_ENTRY Entry;
PKBUGCHECK_CALLBACK_ROUTINE CallbackRoutine;
PVOID Buffer;
ULONG Length;
PUCHAR Component;
ULONG_PTR Checksum;
UCHAR State;
} KBUGCHECK_CALLBACK_RECORD, *PKBUGCHECK_CALLBACK_RECORD;
typedef BOOLEAN
(DDKAPI *PNMI_CALLBACK)(
IN PVOID Context,
IN BOOLEAN Handled);
/*
* VOID
* KeInitializeCallbackRecord(
* IN PKBUGCHECK_CALLBACK_RECORD CallbackRecord)
*/
#define KeInitializeCallbackRecord(CallbackRecord) \
CallbackRecord->State = BufferEmpty;
typedef enum _KDPC_IMPORTANCE {
LowImportance,
MediumImportance,
HighImportance
} KDPC_IMPORTANCE;
typedef enum _MEMORY_CACHING_TYPE_ORIG { typedef enum _MEMORY_CACHING_TYPE_ORIG {
MmFrameBufferCached = 2 MmFrameBufferCached = 2
} MEMORY_CACHING_TYPE_ORIG; } MEMORY_CACHING_TYPE_ORIG;