reactos/ntoskrnl/mm/ARM3
Hermès Bélusca-Maïto f694d12f0c
[NTOS:KE/MM] Some bug-fixes in the bugcheck code.
- Introduce the MmMakeKernelResourceSectionWritable() helper for
  making the kernel resource memory section writable, and use it
  in KeGetBugMessageText(). Indeed, this latter function patches
  in place the bugcheck resource message to trim any trailing
  newlines before displaying the message on screen.

  See also https://github.com/osresearch/uxen/blob/83bad53/dm/introspection-win7.c#L286
  that mentions it too.

  This fixes bugcheck text display (e.g. the MANUALLY_INITIATED_CRASH one)
  when using (at least) MSVC-built ReactOS, avoiding a Page-Fault
  exception during the bugcheck.

- Cover KeGetBugMessageText() in SEH since we are accessing kernel
  resources that could also be corrupted in bugcheck scenarii, and we
  don't want to further bugcheck.

- Fix newline trimming loop.

- KiDoBugCheckCallbacks():
  * Wrap the bugcheck CallbackRoutine call in SEH.
  * Add a FIXME concerning the need of further memory validation of CurrentRecord.

- Add a FIXME concerning the need to run the bugcheck-reason callbacks
  with the KbCallbackReserved1 reason, in KeBugCheckWithTf().
  Mentioned in http://blog.ptsecurity.com/2012/06/customizing-blue-screen-of-death.html
2019-06-25 21:01:49 +02:00
..
arm
i386 [NDK][NTOS] Add global definition of INIT_FUNCTION/INIT_SECTION (#779) 2018-12-30 12:19:11 +01:00
contmem.c
drvmgmt.c
dynamic.c
expool.c [NTOS:MM] ExFreePoolWithTag(): Accept tag mismatch, on release build only (#1334) 2019-02-07 16:57:56 +01:00
hypermap.c
iosup.c
kdbg.c [NTOS:MM] On big pool enumeration, return entry instead of base VA 2019-02-02 10:45:15 +01:00
largepag.c [NDK][NTOS] Add global definition of INIT_FUNCTION/INIT_SECTION (#779) 2018-12-30 12:19:11 +01:00
mdlsup.c [NTOSKRNL] Respect PFN cache attribute when required 2018-10-01 20:59:37 +02:00
miarm.h [NTOS:Mm] Rewrite MiWriteProtectSystemImage (#749) 2019-01-18 22:11:43 +01:00
miavl.h
mmdbg.c
mminit.c [NDK][NTOS] Add global definition of INIT_FUNCTION/INIT_SECTION (#779) 2018-12-30 12:19:11 +01:00
mmsup.c
ncache.c
pagfault.c [NTOS:MM] Fix typo in MiCheckForUserStackOverflow 2018-12-12 12:57:08 +01:00
pfnlist.c
pool.c [NDK][NTOS] Add global definition of INIT_FUNCTION/INIT_SECTION (#779) 2018-12-30 12:19:11 +01:00
procsup.c [NDK][NTOS] Add global definition of INIT_FUNCTION/INIT_SECTION (#779) 2018-12-30 12:19:11 +01:00
section.c [NTOS:MM] Implement big pool table expansion. CORE-15051 2019-01-09 08:18:38 +01:00
session.c
special.c
sysldr.c [NTOS:KE/MM] Some bug-fixes in the bugcheck code. 2019-06-25 21:01:49 +02:00
syspte.c [NDK][NTOS] Add global definition of INIT_FUNCTION/INIT_SECTION (#779) 2018-12-30 12:19:11 +01:00
vadnode.c [NTOS][USERSRV] Silence noisy debug output. 2019-04-22 17:41:17 +02:00
virtual.c
zeropage.c