All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: ERROR: Unable to locate IOAPIC for GSI xx
       [not found] <AANLkTilT0cPU8y2m4ZeatfvtflAagSyQEP9JubqZ6TeW@mail.gmail.com>
@ 2010-06-03  9:08 ` Eric W. Biederman
  2010-06-06  3:56 ` [PATCH] Skip looking for ioapic overrides when ioapics are not present Eric W. Biederman
  1 sibling, 0 replies; 4+ messages in thread
From: Eric W. Biederman @ 2010-06-03  9:08 UTC (permalink / raw)
  To: Avinash Kurup; +Cc: H. Peter Anvin, linux-kernel

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
>
>     I bisected the problem to this commit.

Can I get a full boot log?

It sounds like this would easily be triggered by one of my patches, I
am dubious about the particular patch you point out.  As that only
adds a new function but does not call it.

There should be boot lines that say something like:

> [    0.000000] ACPI: Local APIC address 0xfee00000
> [    0.000000] ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled)
> [    0.000000] ACPI: LAPIC (acpi_id[0x02] lapic_id[0x01] enabled)
> [    0.000000] ACPI: LAPIC (acpi_id[0x03] lapic_id[0x02] enabled)
> [    0.000000] ACPI: LAPIC (acpi_id[0x04] lapic_id[0x03] enabled)
> [    0.000000] ACPI: IOAPIC (id[0x04] address[0xfec00000] gsi_base[0])
> [    0.000000] IOAPIC[0]: apic_id 4, version 0, address 0xfec00000, GSI 0-23
> [    0.000000] ACPI: IOAPIC (id[0x05] address[0xdfefc000] gsi_base[24])
> [    0.000000] IOAPIC[1]: apic_id 5, version 0, address 0xdfefc000, GSI 24-47
> [    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
> [    0.000000] ACPI: BIOS IRQ0 pin2 override ignored.
> [    0.000000] ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
> [    0.000000] ACPI: IRQ9 used by override.

I would like to look at those because they should tell the story of why
you can not find an IOAPIC for your GSIs.

It is possible that the explanation will simply be that the bug I fixed
made those GSIs usable (to linux) on your platform for the first time.

What hardware are you seeing this on?

Eric

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH] Skip looking for ioapic overrides when ioapics are not present
       [not found] <AANLkTilT0cPU8y2m4ZeatfvtflAagSyQEP9JubqZ6TeW@mail.gmail.com>
  2010-06-03  9:08 ` ERROR: Unable to locate IOAPIC for GSI xx Eric W. Biederman
@ 2010-06-06  3:56 ` Eric W. Biederman
  2010-09-30 22:56   ` H. Peter Anvin
  1 sibling, 1 reply; 4+ messages in thread
From: Eric W. Biederman @ 2010-06-06  3:56 UTC (permalink / raw)
  To: x86; +Cc: H. Peter Anvin, linux-kernel, Avinash Kurup

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>

---

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;
 

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH] Skip looking for ioapic overrides when ioapics are not present
  2010-06-06  3:56 ` [PATCH] Skip looking for ioapic overrides when ioapics are not present Eric W. Biederman
@ 2010-09-30 22:56   ` H. Peter Anvin
  2010-10-02 14:45     ` Eric W. Biederman
  0 siblings, 1 reply; 4+ messages in thread
From: H. Peter Anvin @ 2010-09-30 22:56 UTC (permalink / raw)
  To: Eric W. Biederman; +Cc: x86, linux-kernel, Avinash Kurup

On 06/05/2010 08:56 PM, Eric W. Biederman wrote:
> 
> 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;
>  

I was just poked about this patch... it doesn't build "make allnoconfig"
on x86-64.

This is also a bugzilla ticket now:
https://bugzilla.kernel.org/show_bug.cgi?id=17772

	-hpa

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] Skip looking for ioapic overrides when ioapics are not present
  2010-09-30 22:56   ` H. Peter Anvin
@ 2010-10-02 14:45     ` Eric W. Biederman
  0 siblings, 0 replies; 4+ messages in thread
From: Eric W. Biederman @ 2010-10-02 14:45 UTC (permalink / raw)
  To: H. Peter Anvin; +Cc: x86, linux-kernel, Avinash Kurup

"H. Peter Anvin" <hpa@zytor.com> writes:

> On 06/05/2010 08:56 PM, Eric W. Biederman wrote:
>> 
>> 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;
>>  
>
> I was just poked about this patch... it doesn't build "make allnoconfig"
> on x86-64.
>
> This is also a bugzilla ticket now:
> https://bugzilla.kernel.org/show_bug.cgi?id=17772

That sucks.  Do we need to move this function into an acpi specific
file to pass allnonconfig?

Barring crazy build issues the fix is right.

I'm not certain when I will get a chance to look at build issues
as my load spiked considerably.

Eric

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2010-10-02 14:45 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <AANLkTilT0cPU8y2m4ZeatfvtflAagSyQEP9JubqZ6TeW@mail.gmail.com>
2010-06-03  9:08 ` ERROR: Unable to locate IOAPIC for GSI xx Eric W. Biederman
2010-06-06  3:56 ` [PATCH] Skip looking for ioapic overrides when ioapics are not present Eric W. Biederman
2010-09-30 22:56   ` H. Peter Anvin
2010-10-02 14:45     ` Eric W. Biederman

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.