48 lines
1.8 KiB
Diff
48 lines
1.8 KiB
Diff
Subject: Skip looking for ioapic overrides when ioapics are not present
|
||
Date: Sun, 06 Jun 2010 03:56:05 -0000
|
||
From: Eric W. Biederman <ebiederm@xmission.com>
|
||
|
||
Avinash Kurup <kurup.avinash@gmail.com> writes:
|
||
|
||
> Hi Eric,
|
||
> I get the following errors while booting into 2.6.35-rc1. I did not
|
||
> get these in 2.6.34 . The computer however boots and works fine, So its not
|
||
> serious but the following errors are displayed in dmesg.
|
||
>
|
||
> [ 0.089969] ERROR: Unable to locate IOAPIC for GSI 13
|
||
> [ 0.090556] ERROR: Unable to locate IOAPIC for GSI 8
|
||
> [ 0.091104] ERROR: Unable to locate IOAPIC for GSI 12
|
||
> [ 0.091375] ERROR: Unable to locate IOAPIC for GSI 1
|
||
> [ 0.093195] ERROR: Unable to locate IOAPIC for GSI 4
|
||
> [ 0.094342] ERROR: Unable to locate IOAPIC for GSI 10
|
||
> [ 0.096335] ERROR: Unable to locate IOAPIC for GSI 6
|
||
|
||
The new warning originates from acpi_get_override_irq, which I changed to
|
||
use helper functions that warn when they fail.
|
||
|
||
When IOAPICs and ACPI are enabled in a kernel and run on ACPI hardware
|
||
that doesn't use the ioapics the pnp acpi code calls this function,
|
||
looking for ACPI irq overrides. ACPI irq overrides exist only in the
|
||
ioapic case so this function will never succeed. So make the function
|
||
fail fast so we don't call into help functions that legitimately
|
||
complain when they fail.
|
||
|
||
Tested-by: Avinash Kurup <kurup.avinash@gmail.com>
|
||
Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
|
||
[bwh: Add config condition]
|
||
---
|
||
--- a/arch/x86/kernel/apic/io_apic.c
|
||
+++ b/arch/x86/kernel/apic/io_apic.c
|
||
@@ -4066,6 +4066,11 @@ int acpi_get_override_irq(u32 gsi, int *trigger, int *polarity)
|
||
{
|
||
int ioapic, pin, idx;
|
||
|
||
+#ifdef CONFIG_ACPI
|
||
+ if (acpi_irq_model != ACPI_IRQ_MODEL_IOAPIC)
|
||
+ return -1;
|
||
+#endif
|
||
+
|
||
if (skip_ioapic_setup)
|
||
return -1;
|
||
|