Logging split between PAGE and MEM flags

This commit is contained in:
PatrickvL 2017-03-21 14:26:31 +01:00
parent ca37f43266
commit 2d4d3d1a6e
5 changed files with 39 additions and 23 deletions

View File

@ -201,6 +201,25 @@ typedef long NTSTATUS;
#define PAGE_NOCACHE 0x200
#define PAGE_WRITECOMBINE 0x400
// ******************************************************************
// * MEM Masks
// ******************************************************************
#define MEM_COMMIT 0x1000
#define MEM_RESERVE 0x2000
#define MEM_DECOMMIT 0x4000
#define MEM_RELEASE 0x8000
#define MEM_FREE 0x10000
#define MEM_PRIVATE 0x20000
#define MEM_MAPPED 0x40000
//#define MEM_RESET 0x80000
#define MEM_TOP_DOWN 0x100000
#define MEM_WRITE_WATCH 0x200000
#define MEM_PHYSICAL 0x400000
#define MEM_NOZERO 0x800000 // Replaces MEM_ROTATE on WinXP+
//#define MEM_IMAGE 0x1000000 // Declare like below, to prevent warning C4005: 'MEM_IMAGE': macro redefinition
#define SEC_IMAGE 0x1000000
#define MEM_IMAGE SEC_IMAGE
// ******************************************************************
// * memory
// ******************************************************************

View File

@ -87,17 +87,6 @@ std::ostream& operator<<(std::ostream& os, const PULONG& value)
//
FLAGS2STR_START(ALLOCATION_TYPE)
FLAG2STR(PAGE_NOACCESS)
FLAG2STR(PAGE_READONLY)
FLAG2STR(PAGE_READWRITE)
FLAG2STR(PAGE_WRITECOPY)
FLAG2STR(PAGE_EXECUTE)
FLAG2STR(PAGE_EXECUTE_READ)
FLAG2STR(PAGE_EXECUTE_READWRITE)
FLAG2STR(PAGE_EXECUTE_WRITECOPY)
FLAG2STR(PAGE_GUARD)
FLAG2STR(PAGE_NOCACHE)
FLAG2STR(PAGE_WRITECOMBINE)
FLAG2STR(MEM_COMMIT)
FLAG2STR(MEM_RESERVE)
FLAG2STR(MEM_DECOMMIT)
@ -105,19 +94,12 @@ FLAGS2STR_START(ALLOCATION_TYPE)
FLAG2STR(MEM_FREE)
FLAG2STR(MEM_PRIVATE)
FLAG2STR(MEM_MAPPED)
FLAG2STR(MEM_RESET)
//FLAG2STR(MEM_RESET)
FLAG2STR(MEM_TOP_DOWN)
FLAG2STR(MEM_WRITE_WATCH)
FLAG2STR(MEM_PHYSICAL)
FLAG2STR(SEC_FILE)
FLAG2STR(SEC_IMAGE)
FLAG2STR(SEC_RESERVE)
FLAG2STR(SEC_COMMIT)
FLAG2STR(SEC_NOCACHE)
FLAG2STR(MEM_LARGE_PAGES)
FLAG2STR(MEM_4MB_PAGES)
// MEM_IMAGE = SEC_IMAGE;
// WRITE_WATCH_FLAG_RESET = $01;
FLAG2STR(MEM_NOZERO)
FLAG2STR(MEM_IMAGE)
FLAGS2STR_END_and_LOGRENDER(ALLOCATION_TYPE)
ENUM2STR_START(BUS_DATA_TYPE)
@ -322,6 +304,20 @@ ENUM2STR_START(NTSTATUS) // Not really an enum
ENUM2STR_END_and_LOGRENDER(NTSTATUS)
*/
FLAGS2STR_START(PROTECTION_TYPE)
FLAG2STR(PAGE_NOACCESS)
FLAG2STR(PAGE_READONLY)
FLAG2STR(PAGE_READWRITE)
FLAG2STR(PAGE_WRITECOPY)
FLAG2STR(PAGE_EXECUTE)
FLAG2STR(PAGE_EXECUTE_READ)
FLAG2STR(PAGE_EXECUTE_READWRITE)
FLAG2STR(PAGE_EXECUTE_WRITECOPY)
FLAG2STR(PAGE_GUARD)
FLAG2STR(PAGE_NOCACHE)
FLAG2STR(PAGE_WRITECOMBINE)
FLAGS2STR_END_and_LOGRENDER(PROTECTION_TYPE)
ENUM2STR_START(RETURN_FIRMWARE)
ENUM2STR_CASE(ReturnFirmwareHalt)
ENUM2STR_CASE(ReturnFirmwareReboot)

View File

@ -45,6 +45,7 @@ namespace xboxkrnl
enum ALLOCATION_TYPE;
enum CREATE_DISPOSITION;
enum CREATE_OPTION;
enum PROTECTION_TYPE;
};
@ -74,6 +75,7 @@ LOGRENDER_HEADER(KWAIT_REASON);
LOGRENDER_HEADER(KOBJECTS);
LOGRENDER_HEADER(MODE);
//LOGRENDER_HEADER(NTSTATUS); // Not really an enum
LOGRENDER_HEADER(PROTECTION_TYPE); // Not really an enum
LOGRENDER_HEADER(RETURN_FIRMWARE);
LOGRENDER_HEADER(TIMER_TYPE);
LOGRENDER_HEADER(WAIT_TYPE);

View File

@ -108,7 +108,7 @@ XBSYSAPI EXPORTNUM(166) xboxkrnl::PVOID NTAPI xboxkrnl::MmAllocateContiguousMemo
LOG_FUNC_ARG(LowestAcceptableAddress)
LOG_FUNC_ARG(HighestAcceptableAddress)
LOG_FUNC_ARG(Alignment)
LOG_FUNC_ARG(ProtectionType)
LOG_FUNC_ARG_TYPE(PROTECTION_TYPE, ProtectionType)
LOG_FUNC_END;
PVOID pRet = (PVOID)1; // Marker, never returned, overwritten with NULL on input error

View File

@ -61,7 +61,6 @@ namespace NtDll
#include <ntstatus.h>
#pragma warning(default:4005)
#define MEM_NOZERO 0x800000
#define MEM_KNOWN_FLAGS (MEM_COMMIT | MEM_RESERVE | MEM_TOP_DOWN | MEM_RESET | MEM_NOZERO)
#define MM_HIGHEST_USER_ADDRESS (PVOID)0x7FFEFFFF