Author: ros-arm-bringup
Date: Sun Jul 27 00:38:51 2008
New Revision: 34821
URL:
http://svn.reactos.org/svn/reactos?rev=34821&view=rev
Log:
- MmDeleteVirtualMapping can be called for memory that isn't mapped yet -- just ignore
this like we do on x86.
- This gets us much farther, to the point where we try to load smss.exe but can't find
it.
Modified:
trunk/reactos/ntoskrnl/mm/arm/stubs.c
Modified: trunk/reactos/ntoskrnl/mm/arm/stubs.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/mm/arm/stubs.c?re…
==============================================================================
--- trunk/reactos/ntoskrnl/mm/arm/stubs.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/mm/arm/stubs.c [iso-8859-1] Sun Jul 27 00:38:51 2008
@@ -293,12 +293,21 @@
// Get the PTE
//
PointerPte = MiGetPteAddress(Address);
+ if (PointerPte->u.Hard.L1.Fault.Type == FaultPte)
+ {
+ //
+ // Invalid PTE
+ //
+ if (WasDirty) *WasDirty = FALSE;
+ if (Page) *Page = 0;
+ return;
+ }
+
+ //
+ // Save the PTE
+ //
+ Pte = *PointerPte;
ASSERT(PointerPte->u.Hard.L2.Small.Type == SmallPte);
-
- //
- // Save the PTE
- //
- Pte = *PointerPte;
//
// Destroy the PTE