https://git.reactos.org/?p=reactos.git;a=commitdiff;h=e97b95cc2eb9e1fb4092adb37493ae91ffbe44e1
commit e97b95cc2eb9e1fb4092adb37493ae91ffbe44e1 Author: Timo Kreuzer <timo.kreu...@reactos.org> AuthorDate: Mon Aug 20 23:52:42 2018 +0200 Commit: Timo Kreuzer <timo.kreu...@reactos.org> CommitDate: Mon Aug 20 23:52:42 2018 +0200 [NTOS:MM] Fix ASSERT when expanding paged pool The page directory is double mapped on x86 in the system process, so writing to it will already write to the PDE. --- ntoskrnl/mm/ARM3/pool.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/ntoskrnl/mm/ARM3/pool.c b/ntoskrnl/mm/ARM3/pool.c index 113a7aa981..9ef703ef2c 100644 --- a/ntoskrnl/mm/ARM3/pool.c +++ b/ntoskrnl/mm/ARM3/pool.c @@ -555,6 +555,8 @@ MiAllocatePoolPages(IN POOL_TYPE PoolType, (PMMPTE)PointerPde, PFN_FROM_PTE(MiAddressToPte(PointerPde))); + /* Write the actual PDE now */ + MI_WRITE_VALID_PDE(PointerPde, TempPde); #else // // Save it into our double-buffered system page directory @@ -567,9 +569,6 @@ MiAllocatePoolPages(IN POOL_TYPE PoolType, MmSystemPageDirectory[(PointerPde - MiAddressToPde(NULL)) / PDE_COUNT]); #endif - /* Write the actual PDE now */ - MI_WRITE_VALID_PDE(PointerPde, TempPde); - // // Move on to the next expansion address //