Re: oops in ioapic_write_entry

From: Eric W. Biederman
Date: Mon Aug 02 2010 - 23:26:38 EST


Dave Airlie <airlied@xxxxxxxxx> writes:

>>
>> the kernel is using mptable, and the Âsystem have mcp55, so how come
>> with irq 35?
>> assume we should only have ioapic irq 0 - 23 ...
>>
>> Can you send out boot log with "debug apic=debug pci=routeirq" with
>> 2.6.32 and 2.6.35?
>
> Okay el6log is from a RHEL6 2.6.32 kernel, but it should give a good
> baseline, the 2.6.35 oops even earlier with all those options and is
> in the second attachment.

It appears we have a smoking gun:

For some reason setup_IO_APIC_IRQS thinks we at least 2 io_apics,
but we have only setup 1 io_apic. Since io_apics need a kmap entry
accessing an apic that hasn't been setup will definitely give a
page fault. It sounds like something is stomping nr_ioapics.

From: 2.6.35-debuglog
IOAPIC[0]: apic_id 8, version 17, address 0xfec00000, GSI 0-23
....
IOAPIC[1]: Set routing entry (0-16 -> 0x51 -> IRQ 16 Mode:1 Active:1)

Can we get your System.map of the failing kernel (so we can see what
is close to nr_ioapics), and could you add a print statement in
arch/x86/kernel/apic/io_apic:setup_IO_APIC_irqs to print nr_ioapics?

I would be surprised if drm changes could have affected this.

Eric

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