https://git.reactos.org/?p=reactos.git;a=commitdiff;h=ef1c7266213037760a29b26a057ff92fa2ac283a

commit ef1c7266213037760a29b26a057ff92fa2ac283a
Author:     Thomas Faber <[email protected]>
AuthorDate: Thu Oct 8 08:39:21 2020 +0200
Commit:     Thomas Faber <[email protected]>
CommitDate: Thu Oct 8 08:59:46 2020 +0200

    [NTOS:MM] Print debugging information in case CORE-16449 happens.
---
 ntoskrnl/mm/ARM3/sysldr.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/ntoskrnl/mm/ARM3/sysldr.c b/ntoskrnl/mm/ARM3/sysldr.c
index 68b2a126089..c66f06c4fe8 100644
--- a/ntoskrnl/mm/ARM3/sysldr.c
+++ b/ntoskrnl/mm/ARM3/sysldr.c
@@ -2409,7 +2409,14 @@ MiSetSystemCodeProtection(
         TempPte = *PointerPte;
 
         /* Make sure it's valid */
-        ASSERT(TempPte.u.Hard.Valid == 1);
+        if (TempPte.u.Hard.Valid != 1)
+        {
+            DPRINT1("CORE-16449: FirstPte=%p, LastPte=%p, Protection=%lx\n", 
FirstPte, LastPte, Protection);
+            DPRINT1("CORE-16449: PointerPte=%p, TempPte=%lx\n", PointerPte, 
TempPte.u.Long);
+            DPRINT1("CORE-16449: Please issue the 'mod' and 'bt' (KDBG) or 
'lm' and 'kp' (WinDbg) commands. Then report this in Jira.\n");
+            ASSERT(TempPte.u.Hard.Valid == 1);
+            break;
+        }
 
         /* Update the protection */
         TempPte.u.Hard.Write = BooleanFlagOn(Protection, IMAGE_SCN_MEM_WRITE);

Reply via email to