blob: a72d5e89b9575f159717bd9d45452e71e06dd596 [file] [log] [blame]
From: Ben Hutchings <ben@decadent.org.uk>
Date: Sun, 11 Nov 2018 01:02:49 +0000
Subject: x86/apic: Fix build failure with X86_IO_APIC disabled
My backport of commit 2e63ad4bd5dd "x86/apic: Do not init irq
remapping if ioapic is disabled" added an unconditional use of
skip_ioapic_setup. Enabling X86_LOCAL_APIC but not X86_IO_APIC
results in a build failure.
This configuration was made impossible by commit b1da1e715d4f
"x86/Kconfig: Simplify X86_IO_APIC dependencies", but that seems to
depend on additional changes that aren't suitable for stable.
The function that was changed, enable_IR_x2apic(), is only used in
64-bit configurations where CONFIG_X86_IO_APIC is always enabled. So
extend the #ifdef CONFIG_X86_64 section to include this function.
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
---
--- a/arch/x86/kernel/apic/apic.c
+++ b/arch/x86/kernel/apic/apic.c
@@ -1609,6 +1609,8 @@ int __init enable_IR(void)
return -1;
}
+#ifdef CONFIG_X86_64
+
void __init enable_IR_x2apic(void)
{
unsigned long flags;
@@ -1683,7 +1685,6 @@ skip_x2apic:
local_irq_restore(flags);
}
-#ifdef CONFIG_X86_64
/*
* Detect and enable local APICs on non-SMP boards.
* Original code written by Keir Fraser.