From dba96538b8bcad33b0204665e2adf46fd621a357 Mon Sep 17 00:00:00 2001 From: ReactOS Portable Systems Group Date: Mon, 22 Jun 2009 10:22:19 +0000 Subject: [PATCH] - Initialize system PTE space. svn path=/trunk/; revision=41530 --- reactos/ntoskrnl/mm/ARM3/init.c | 5 +++++ reactos/ntoskrnl/mm/ARM3/syspte.c | 13 ++++++++++++- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/reactos/ntoskrnl/mm/ARM3/init.c b/reactos/ntoskrnl/mm/ARM3/init.c index a702b38fa5c..8ab3b4f4e07 100644 --- a/reactos/ntoskrnl/mm/ARM3/init.c +++ b/reactos/ntoskrnl/mm/ARM3/init.c @@ -443,6 +443,11 @@ MmArmInitSystem(IN ULONG Phase, ASSERT((MmNumberOfSystemPtes - OldCount) <= 1000); DPRINT1("Final System PTE count: %d (%d bytes)\n", MmNumberOfSystemPtes, MmNumberOfSystemPtes * PAGE_SIZE); + + // + // Create the system PTE space + // + MiInitializeSystemPtes(PointerPte, MmNumberOfSystemPtes, SystemPteSpace); } // diff --git a/reactos/ntoskrnl/mm/ARM3/syspte.c b/reactos/ntoskrnl/mm/ARM3/syspte.c index a9a09ed7b57..40177dc711f 100644 --- a/reactos/ntoskrnl/mm/ARM3/syspte.c +++ b/reactos/ntoskrnl/mm/ARM3/syspte.c @@ -23,6 +23,7 @@ PMMPTE MmSystemPtesStart[MaximumPtePoolTypes]; PMMPTE MmSystemPtesEnd[MaximumPtePoolTypes]; MMPTE MmFirstFreeSystemPte[MaximumPtePoolTypes]; ULONG MmTotalFreeSystemPtes[MaximumPtePoolTypes]; +ULONG MmTotalSystemPtes; /* PRIVATE FUNCTIONS **********************************************************/ @@ -36,7 +37,6 @@ MiInitializeSystemPtes(IN PMMPTE StartingPte, // Sanity checks // ASSERT(NumberOfPtes >= 1); - ASSERT(PoolType == NonPagedPoolExpansion); // // Set the starting and ending PTE addresses for this space @@ -71,6 +71,17 @@ MiInitializeSystemPtes(IN PMMPTE StartingPte, // We also keep a global for it // MmTotalFreeSystemPtes[PoolType] = NumberOfPtes; + + // + // Check if this is the system PTE space + // + if (PoolType == SystemPteSpace) + { + // + // Remember how many PTEs we have + // + MmTotalSystemPtes = NumberOfPtes; + } } /* EOF */