I didn't follow this thread closely, but:
1. dont_enable_local_apic was originally only intended for those
systems (i.e., Dell laptops) where enabling the local APIC in
HW (via APIC_BASE MSR) causes problems due to broken BIOSen.
It was never intended as a "Kernel, please don't use the local
APIC even though I configured it" option. It doesn't help you
if your machine boots with the local APIC enabled, but the
local APIC doesn't work for some reason.
2. The only way to reach no_apic is if we boot on a vendor/model
combination that isn't known to have a local APIC that can be
enabled in software. And the second patch hunk only makes a
difference if the CPU boots with an enabled local APIC.
So what vendor/model CPU is used in the failure case?
(And if its local APIC is broken, cpu_has_apic should be cleared
rather than setting the dont_enable flag. Post-boot code may
access the local APIC if CONFIG_X86_LOCAL_APIC && cpu_has_apic.)
3. What is the exact failure? Hang or crash? Where? UP or SMP kernel?
(If SMP kernel, does booting with "nosmp" help?)
/Mikael
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/