Re: 4.8.2 not booting in 32-bit VM without I/O-APIC
From: Michal Necasek
Date: Fri Oct 28 2016 - 14:53:15 EST
Hi Thomas,
Sorry if I wasn't clear. No, it doesn't work for us. The ff8560512b8d commit fixes the APIC poking on machines where there is no local APIC available (and thus fixes the committer's machine), but it doesn't work in our case, where there is a local APIC but no I/O APIC, no ACPI MADT, and no MP tables.
In other words, for us boot_cpu_has(X86_FEATURE_APIC) is true but the APIC has not been set up yet because init_apic_mappings() hasn't been run.
Regards,
Michal
----- Original Message -----
From: tglx@xxxxxxxxxxxxx
To: michal.necasek@xxxxxxxxxx
Cc: linux-kernel@xxxxxxxxxxxxxxx, prarit@xxxxxxxxxx, ville.syrjala@xxxxxxxxxxxxxxx, michael.thayer@xxxxxxxxxx, frank.mehnert@xxxxxxxxxx, knut.osmundsen@xxxxxxxxxx
Sent: Friday, October 28, 2016 8:41:46 PM GMT +01:00 Amsterdam / Berlin / Bern / Rome / Stockholm / Vienna
Subject: Re: 4.8.2 not booting in 32-bit VM without I/O-APIC
On Fri, 28 Oct 2016, Michal Necasek wrote:
> I suspect that either init_apic_mappings() needs to be called earlier or
> the initial fix from commit 2a51fe08 needs to be done later.
Linus tree has a fix for this:
ff8560512b8d x86/boot/smp: Don't try to poke disabled/non-existent APIC
It's on the way to stable as well. Can you try whether that works for you?
Thanks,
tglx