From: Guido Trentalancia on
I have applied the patch below to the 2.6.35 kernel and it finally
stopped reporting "Unable to locate IOAPIC for GSI..." on bootup.

>Eric W. Biederman writes on 2010-06-06 03:56:05
>Avinash Kurup <kurup.avinash(a)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(a)gmail.com>
>Signed-off-by: "Eric W. Biederman" <ebiederm(a)xmission.com>
>
>---
>
>diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c
>index 33f3563..226a6d1 100644
>--- a/arch/x86/kernel/apic/io_apic.c
>+++ b/arch/x86/kernel/apic/io_apic.c
>@@ -4066,6 +4066,9 @@ int acpi_get_override_irq(u32 gsi, int *trigger, int *polarity)
> {
> int ioapic, pin, idx;
>
>+ if (acpi_irq_model != ACPI_IRQ_MODEL_IOAPIC)
>+ return -1;
>+
> if (skip_ioapic_setup)
> return -1;
>
>


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/