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

From: Maciej W. Rozycki
Date: Tue Mar 31 2020 - 19:35:22 EST


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.

FWIW,

Maciej