Re: [PATCH] x86/smpboot: Remove 486-isms from the modern AP boot path

From: Andrew Cooper
Date: Wed Apr 01 2020 - 18:30:24 EST


On 01/04/2020 00:35, Maciej W. Rozycki wrote:
> On Wed, 25 Mar 2020, Thomas Gleixner wrote:
>
>>>> @@ -1118,7 +1121,7 @@ static int do_boot_cpu(int apicid, int cpu,
>>>> struct task_struct *idle,
>>>> }
>>>> }
>>>>
>>>> - if (x86_platform.legacy.warm_reset) {
>>>> + if (!APIC_INTEGRATED(boot_cpu_apic_version)) {
>>>> /*
>>>> * Cleanup possible dangling ends...
>>>> */
>>> We don't support SMP on 486 and haven't for a very long time. Is there
>>> any reason to retain that code at all?
>> Not that I'm aware off.
> For the record: this code is for Pentium really, covering original P5
> systems, which lacked integrated APIC, as well as P54C systems that went
> beyond dual (e.g. ALR made quad-SMP P54C systems). They all used external
> i82489DX APICs for SMP support. Few were ever manufactured and getting
> across one let alone running Linux might be tough these days. I never
> managed to get one for myself, which would have been helpful for
> maintaining this code.
>
> Even though we supported them by spec I believe we never actually ran MP
> on any 486 SMP system (Alan Cox might be able to straighten me out on
> this); none that I know of implemented the MPS even though actual hardware
> might have used the APIC architecture. Compaq had its competing solution
> for 486 and newer SMP, actually deployed, the name of which I long forgot.
> We never supported it due to the lack of documentation combined with the
> lack of enough incentive for someone to reverse-engineer it.

:)

I chose "486-ism" based on what the MP spec said about external vs
integrated Local APICs. I can't claim to have any experience of those days.

I guess given v2 of the patch, I guess this should become "Remove
external-LAPIC support from the AP boot path" ?

~Andrew