diff --git a/reactos/include/napi/core.h b/reactos/include/napi/core.h index 4ecb004402e..b7d9df0f7b0 100644 --- a/reactos/include/napi/core.h +++ b/reactos/include/napi/core.h @@ -7,10 +7,6 @@ #define MM_CORE_DUMP_HEADER_MAGIC (0xdeafbead) #define MM_CORE_DUMP_HEADER_VERSION (0x1) -#define MM_CORE_DUMP_TYPE_NONE (0x0) -#define MM_CORE_DUMP_TYPE_MINIMAL (0x1) -#define MM_CORE_DUMP_TYPE_FULL (0x2) - typedef struct _MM_CORE_DUMP_HEADER { ULONG Magic; diff --git a/reactos/include/ndk/extypes.h b/reactos/include/ndk/extypes.h index 9adc8352ac3..97a10fe3c4c 100644 --- a/reactos/include/ndk/extypes.h +++ b/reactos/include/ndk/extypes.h @@ -18,6 +18,7 @@ extern NTOSAPI POBJECT_TYPE ExMutantObjectType; extern NTOSAPI POBJECT_TYPE ExTimerType; /* CONSTANTS *****************************************************************/ +#define INVALID_HANDLE_VALUE (HANDLE)-1 /* ENUMERATIONS **************************************************************/ @@ -70,6 +71,12 @@ typedef struct _HANDLE_TABLE_ENTRY_INFO ULONG AuditMask; } HANDLE_TABLE_ENTRY_INFO, *PHANDLE_TABLE_ENTRY_INFO; +typedef struct _RUNDOWN_DESCRIPTOR +{ + ULONG_PTR References; + KEVENT RundownEvent; +} RUNDOWN_DESCRIPTOR, *PRUNDOWN_DESCRIPTOR; + typedef struct _HANDLE_TABLE_ENTRY { union diff --git a/reactos/include/ndk/halfuncs.h b/reactos/include/ndk/halfuncs.h index 435dfaf472c..a8e80f195de 100644 --- a/reactos/include/ndk/halfuncs.h +++ b/reactos/include/ndk/halfuncs.h @@ -114,7 +114,7 @@ HalReleaseDisplayOwnership(VOID); VOID STDCALL HalReturnToFirmware( - FIRMWARE_ENTRY Action + FIRMWARE_REENTRY Action ); VOID diff --git a/reactos/include/ndk/haltypes.h b/reactos/include/ndk/haltypes.h index b6976da8283..91f7a7c1de7 100644 --- a/reactos/include/ndk/haltypes.h +++ b/reactos/include/ndk/haltypes.h @@ -34,9 +34,13 @@ extern ULONG NTOSAPI KdComPortInUse; /* ENUMERATIONS **************************************************************/ typedef enum _FIRMWARE_ENTRY { - /*FIXME */ - HalFixMe -} FIRMWARE_ENTRY; + HalHaltRoutine, + HalPowerDownRoutine, + HalRestartRoutine, + HalRebootRoutine, + HalInteractiveModeRoutine, + HalMaximumRoutine +} FIRMWARE_REENTRY, *PFIRMWARE_REENTRY; /* TYPES *********************************************************************/ diff --git a/reactos/include/ndk/zwfuncs.h b/reactos/include/ndk/zwfuncs.h index 916635a522f..5d5f2726607 100644 --- a/reactos/include/ndk/zwfuncs.h +++ b/reactos/include/ndk/zwfuncs.h @@ -1396,7 +1396,7 @@ ZwOpenSection( NTSTATUS STDCALL NtOpenSemaphore( - IN HANDLE SemaphoreHandle, + OUT PHANDLE SemaphoreHandle, IN ACCESS_MASK DesiredAcces, IN POBJECT_ATTRIBUTES ObjectAttributes ); @@ -1404,7 +1404,7 @@ NtOpenSemaphore( NTSTATUS STDCALL ZwOpenSemaphore( - IN HANDLE SemaphoreHandle, + OUT PHANDLE SemaphoreHandle, IN ACCESS_MASK DesiredAcces, IN POBJECT_ATTRIBUTES ObjectAttributes ); @@ -2945,13 +2945,13 @@ ZwSetVolumeInformationFile( NTSTATUS STDCALL NtShutdownSystem( - IN ULONG Action + IN SHUTDOWN_ACTION Action ); NTSTATUS STDCALL ZwShutdownSystem( - IN ULONG Action + IN SHUTDOWN_ACTION Action ); NTSTATUS diff --git a/reactos/include/ndk/zwtypes.h b/reactos/include/ndk/zwtypes.h index 4fd01e857e0..566e14e521e 100644 --- a/reactos/include/ndk/zwtypes.h +++ b/reactos/include/ndk/zwtypes.h @@ -21,6 +21,13 @@ /* ENUMERATIONS **************************************************************/ +typedef enum SHUTDOWN_ACTION_TAG +{ + ShutdownNoReboot, + ShutdownReboot, + ShutdownPowerOff +} SHUTDOWN_ACTION; + typedef enum _PLUGPLAY_BUS_CLASS { SystemBus, @@ -198,7 +205,7 @@ typedef LANGID *PLANGID; typedef struct _MUTANT_BASIC_INFORMATION { LONG CurrentCount; - BOOLEAN OwnedbyCalled; + BOOLEAN OwnedByCaller; BOOLEAN AbandonedState; } MUTANT_BASIC_INFORMATION, *PMUTANT_BASIC_INFORMATION; diff --git a/reactos/include/ntos/haltypes.h b/reactos/include/ntos/haltypes.h index 54b4bc36dcf..10c8e554cfb 100755 --- a/reactos/include/ntos/haltypes.h +++ b/reactos/include/ntos/haltypes.h @@ -24,8 +24,15 @@ /* HalReturnToFirmware */ -#define FIRMWARE_HALT 1 -#define FIRMWARE_REBOOT 3 +typedef enum _FIRMWARE_ENTRY +{ + HalHaltRoutine, + HalPowerDownRoutine, + HalRestartRoutine, + HalRebootRoutine, + HalInteractiveModeRoutine, + HalMaximumRoutine +} FIRMWARE_REENTRY, *PFIRMWARE_REENTRY; #ifndef __USE_W32API diff --git a/reactos/ntoskrnl/ex/power.c b/reactos/ntoskrnl/ex/power.c index 8e655fafdee..07a3101b06f 100644 --- a/reactos/ntoskrnl/ex/power.c +++ b/reactos/ntoskrnl/ex/power.c @@ -96,11 +96,11 @@ ShutdownThreadMain(PVOID Context) } else if (Action == ShutdownReboot) { - HalReturnToFirmware (FIRMWARE_REBOOT); + HalReturnToFirmware (HalRebootRoutine); } else { - HalReturnToFirmware (FIRMWARE_HALT); + HalReturnToFirmware (HalHaltRoutine); } } diff --git a/reactos/ntoskrnl/include/internal/mm.h b/reactos/ntoskrnl/include/internal/mm.h index 497ee4bbf06..154c4ad2944 100644 --- a/reactos/ntoskrnl/include/internal/mm.h +++ b/reactos/ntoskrnl/include/internal/mm.h @@ -323,6 +323,10 @@ extern MM_STATS MmStats; #define MM_PHYSICAL_PAGE_MPW_PENDING (0x8) +#define MM_CORE_DUMP_TYPE_NONE (0x0) +#define MM_CORE_DUMP_TYPE_MINIMAL (0x1) +#define MM_CORE_DUMP_TYPE_FULL (0x2) + #define MM_PAGEOP_PAGEIN (1) #define MM_PAGEOP_PAGEOUT (2) #define MM_PAGEOP_PAGESYNCH (3)