[HAL] Fix SMP initialization

- Don't use CONFIG_SMP, this isn't handled in (most of) hal
- Add a dummy HalpSetupProcessorsTable for UP
- Call HalpRegisterKdSupportFunctions only for processor 0
This commit is contained in:
Timo Kreuzer 2023-11-23 22:20:51 +02:00
parent 86b82e4ce7
commit 10bb50b456
3 changed files with 12 additions and 6 deletions

View file

@ -25,16 +25,12 @@ HalpInitProcessor(
IN ULONG ProcessorNumber,
IN PLOADER_PARAMETER_BLOCK LoaderBlock)
{
#ifdef CONFIG_SMP
if (ProcessorNumber == 0)
{
#endif
HalpParseApicTables(LoaderBlock);
#ifdef CONFIG_SMP
}
HalpSetupProcessorsTable(ProcessorNumber);
#endif
/* Initialize the local APIC for this cpu */
ApicInitializeLocalApic(ProcessorNumber);

View file

@ -57,8 +57,11 @@ HalInitializeProcessor(
InterlockedBitTestAndSetAffinity(&HalpActiveProcessors, ProcessorNumber);
InterlockedBitTestAndSetAffinity(&HalpDefaultInterruptAffinity, ProcessorNumber);
/* Register routines for KDCOM */
HalpRegisterKdSupportFunctions();
if (ProcessorNumber == 0)
{
/* Register routines for KDCOM */
HalpRegisterKdSupportFunctions();
}
}
/*

View file

@ -33,6 +33,13 @@ HalStartNextProcessor(
return FALSE;
}
VOID
HalpSetupProcessorsTable(
_In_ UINT32 NTProcessorNumber)
{
NOTHING;
}
#ifdef _M_AMD64
VOID