From 76d35dde1d7ba3c5785a90897fd01001eb301bba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Herm=C3=A8s=20B=C3=A9lusca-Ma=C3=AFto?= Date: Thu, 28 Nov 2024 19:42:06 +0100 Subject: [PATCH] [NTOS:KD64] KdInitSystem(): Poll for break-in on symbol load *ONLY* at boot-time (#7539) I.e. when LoaderBlock != NULL and we have loaded the initial hal and ntoskrnl symbols. KdBreakAfterSymbolLoad is then checked for when the other boot symbols have been loaded by ex/init.c!ExpLoadBootSymbols(), invoked by ExpInitializeExecutive(). --- ntoskrnl/kd64/kdinit.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/ntoskrnl/kd64/kdinit.c b/ntoskrnl/kd64/kdinit.c index 4f49b48ef28..917061995fe 100644 --- a/ntoskrnl/kd64/kdinit.c +++ b/ntoskrnl/kd64/kdinit.c @@ -208,7 +208,7 @@ KdInitSystem( KdVersionBlock.Unused[0] = 0; /* Link us in the KPCR */ - KeGetPcr()->KdVersionBlock = &KdVersionBlock; + KeGetPcr()->KdVersionBlock = &KdVersionBlock; } /* Check if we have a loader block */ @@ -445,10 +445,11 @@ KdInitSystem( NextEntry = NextEntry->Flink; i++; } - } - /* Check for incoming breakin and break on symbol load if we have it */ - KdBreakAfterSymbolLoad = KdPollBreakIn(); + /* Check for incoming break-in and break on symbol load + * if requested, see ex/init.c!ExpLoadBootSymbols() */ + KdBreakAfterSymbolLoad = KdPollBreakIn(); + } } else {