Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cec6be6d authored by Cyrill Gorcunov's avatar Cyrill Gorcunov Committed by Ingo Molnar
Browse files

x86: apic: Fixmap apic address even if apic disabled



In case if apic were disabled by boot option
we still need read_apic operation. So fixmap
a fake apic area if needed.

[ Impact: fix boot crash ]

Signed-off-by: default avatarCyrill Gorcunov <gorcunov@openvz.org>
Cc: yinghai@kernel.org
Cc: eswierk@aristanetworks.com
LKML-Reference: <20090511134140.GH4624@lenovo>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent 97a52714
Loading
Loading
Loading
Loading
+9 −8
Original line number Diff line number Diff line
@@ -1587,13 +1587,6 @@ void __init init_apic_mappings(void)
	} else
		apic_phys = mp_lapic_addr;

	/* lets check if we may NOP'ify apic operations */
	if (!cpu_has_apic) {
		pr_info("APIC: disable apic facility\n");
		apic_disable();
		return;
	}

	/*
	 * acpi lapic path already maps that address in
	 * acpi_register_lapic_address()
@@ -1603,6 +1596,14 @@ void __init init_apic_mappings(void)

	apic_printk(APIC_VERBOSE, "mapped APIC to %08lx (%08lx)\n",
			APIC_BASE, apic_phys);

	/* lets check if we may NOP'ify apic operations */
	if (!cpu_has_apic) {
		pr_info("APIC: disable apic facility\n");
		apic_disable();
		return;
	}

	/*
	 * Fetch the APIC ID of the BSP in case we have a
	 * default configuration (or the MP table is broken).