Author: fireball Date: Fri Jun 29 00:19:16 2007 New Revision: 27317
URL: http://svn.reactos.org/svn/reactos?rev=27317&view=rev Log: - Always use PsLoadedModuleList as a list of modules. - Load kernel and hal symbols during BootPhase 1 initialization of this KD wrapper.
Modified: trunk/reactos/ntoskrnl/kdbg/kdb_symbols.c
Modified: trunk/reactos/ntoskrnl/kdbg/kdb_symbols.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/kdbg/kdb_symbols.c... ============================================================================== --- trunk/reactos/ntoskrnl/kdbg/kdb_symbols.c (original) +++ trunk/reactos/ntoskrnl/kdbg/kdb_symbols.c Fri Jun 29 00:19:16 2007 @@ -611,9 +611,9 @@
DPRINT("KdbSymProcessBootSymbols(%wZ)\n", &ModuleName);
- /* Check which list we should use */ - ListHead = (KeLoaderBlock) ? &KeLoaderBlock->LoadOrderListHead : - &PsLoadedModuleList; + /* We use PsLoadedModuleList here, otherwise (in case of + using KeLoaderBlock) all our data will be just lost */ + ListHead = &PsLoadedModuleList;
/* Found module we are interested in */ NextEntry = ListHead->Flink; @@ -690,6 +690,7 @@ PCHAR p1, p2; int Found; char YesNo; + ANSI_STRING FileName;
DPRINT("KdbSymInit() BootPhase=%d\n", BootPhase);
@@ -759,6 +760,16 @@
RosSymInitKernelMode(); } + else if (BootPhase == 1) + { + /* Load symbols for NTOSKRNL.EXE and HAL.DLL*/ + /* FIXME: Load as 1st and 2nd entries of InLoadOrderList instead + of hardcoding them here! */ + RtlInitAnsiString(&FileName, "\SystemRoot\System32\NTOSKRNL.EXE"); + KdbSymProcessBootSymbols(&FileName); + RtlInitAnsiString(&FileName, "\SystemRoot\System32\HAL.DLL"); + KdbSymProcessBootSymbols(&FileName); + } }
/* EOF */