From 9e489a9b8e6872560496f8bb2093b3cf303a5d66 Mon Sep 17 00:00:00 2001 From: Sir Richard Date: Thu, 22 Jul 2010 20:47:28 +0000 Subject: [PATCH] [NTOS]: Define the template prototype PTE. svn path=/trunk/; revision=48199 --- reactos/ntoskrnl/mm/ARM3/i386/init.c | 3 +++ reactos/ntoskrnl/mm/ARM3/miarm.h | 3 +++ 2 files changed, 6 insertions(+) diff --git a/reactos/ntoskrnl/mm/ARM3/i386/init.c b/reactos/ntoskrnl/mm/ARM3/i386/init.c index a42a24e8621..06afaf20598 100644 --- a/reactos/ntoskrnl/mm/ARM3/i386/init.c +++ b/reactos/ntoskrnl/mm/ARM3/i386/init.c @@ -25,6 +25,9 @@ MMPTE ValidKernelPte = {.u.Hard.Valid = 1, .u.Hard.Write = 1, .u.Hard.Dirty = 1, /* Template PDE for a demand-zero page */ MMPDE DemandZeroPde = {.u.Long = (MM_READWRITE << MM_PTE_SOFTWARE_PROTECTION_BITS)}; +/* Template PTE for prototype page */ +MMPTE PrototypePte = {.u.Long = (MM_READWRITE << MM_PTE_SOFTWARE_PROTECTION_BITS) | PTE_PROTOTYPE | 0xFFFFF000}; + /* PRIVATE FUNCTIONS **********************************************************/ VOID diff --git a/reactos/ntoskrnl/mm/ARM3/miarm.h b/reactos/ntoskrnl/mm/ARM3/miarm.h index a1ec45d89df..e7b22e2d1d7 100644 --- a/reactos/ntoskrnl/mm/ARM3/miarm.h +++ b/reactos/ntoskrnl/mm/ARM3/miarm.h @@ -129,6 +129,7 @@ #define PTE_WRITECOPY 0x200 #define PTE_EXECUTE_READWRITE 0x0 #define PTE_EXECUTE_WRITECOPY 0x200 +#define PTE_PROTOTYPE 0x400 // // Cache flags // @@ -381,6 +382,7 @@ extern MMPTE HyperTemplatePte; extern MMPDE ValidKernelPde; extern MMPTE ValidKernelPte; extern MMPDE DemandZeroPde; +extern MMPTE PrototypePte; extern BOOLEAN MmLargeSystemCache; extern BOOLEAN MmZeroPageFile; extern BOOLEAN MmProtectFreedNonPagedPool; @@ -483,6 +485,7 @@ extern PVOID MiSessionImageEnd; extern PMMPTE MiHighestUserPte; extern PMMPDE MiHighestUserPde; extern PFN_NUMBER MmSystemPageDirectory[PD_COUNT]; +extern PMMPTE MmSharedUserDataPte; #define MI_PFN_TO_PFNENTRY(x) (&MmPfnDatabase[1][x]) #define MI_PFNENTRY_TO_PFN(x) (x - MmPfnDatabase[1])