Re: [PATCH 2/2] acpi: Disable IRQ 0 through I/O APIC for some HP systems

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Rafael J. Wysocki <rjw@...>
Cc: Ingo Molnar <mingo@...>, Matthew Garrett <mjg59@...>, Len Brown <lenb@...>, Thomas Gleixner <tglx@...>, <linux-next@...>, <linux-acpi@...>, <linux-kernel@...>, Andi Kleen <andi@...>
Date: Monday, July 7, 2008 - 1:10 pm

On Mon, 7 Jul 2008, Rafael J. Wysocki wrote:


 Well, I hope it has not changed too much since my recent work in this 
area...


 With the workaround activated it is virtually certain.


 And the conclusion is?  If we leave MP-table setups aside as irrelevant
for this configuration, we can be almost certain apic2 and pin2 are both
equal to -1 at this point.  This is because (unlike the MP table) ACPI has
no provisions in its tables for ExtINTA APIC interrupt inputs.  Therefore
the only case apic2 and pin2 may not be equal -1 here is when the firmware
had set up one of the inputs as such in the hardware before initiating
bootstrap which has been subsequently noted by a piece of code in
enable_IO_APIC() which examines the I/O APIC for such a condition.

 I have taken these circumstances very much into account when preparing
the workaround, based on the assumption that if the firmware has set up an
I/O APIC line as an ExtINTA interrupt, then it means it considers it
suitable to use in such a manner.  This furthermore implies the line
should be safe to be used in any valid 8259A mode of operation, such as
one we use to forward IRQ0 transparently through the 8259A (we
double-check it just in case though, as workarounds for hardware bugs in
the past made it not always true).  The workaround therefore applies to
genuine IRQ0 routing as reported by ACPI only and not any possible legacy
ExtINTA fallback that we may attempt to use.

 Of course, as determined previously, the ExtINTA line is not safe to be
used on your box, but it has not been set up by the firmware as an ExtINTA
interrupt either, so the assumption mentioned above remains valid and has
no negative impact on your system.  At this point all of apic1, apic2,
pin1 and pin2 should be equal -1, which means the reassignments you quoted
make no changes to the variables.


 Which means the workaround has not triggered and the rest of cosideration 
is therefore irrelevant.  Please get us these DMI IDs, so that we can see 
what's wrong with the quirk.

  Maciej
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH 2/2] acpi: Disable IRQ 0 through I/O APIC for some HP..., Maciej W. Rozycki, (Mon Jun 30, 8:12 pm)
Re: [PATCH 2/2] acpi: Disable IRQ 0 through I/O APIC for som..., Rafael J. Wysocki, (Tue Jul 8, 11:27 am)
Re: [PATCH 2/2] acpi: Disable IRQ 0 through I/O APIC for som..., Maciej W. Rozycki, (Tue Jul 8, 12:25 pm)
Re: [PATCH 2/2] acpi: Disable IRQ 0 through I/O APIC for som..., Rafael J. Wysocki, (Tue Jul 8, 12:54 pm)
Re: [PATCH 2/2] acpi: Disable IRQ 0 through I/O APIC for som..., Maciej W. Rozycki, (Tue Jul 8, 10:39 am)
Re: [PATCH 2/2] acpi: Disable IRQ 0 through I/O APIC for som..., Maciej W. Rozycki, (Mon Jul 7, 1:10 pm)
Re: [PATCH 2/2] acpi: Disable IRQ 0 through I/O APIC for som..., Maciej W. Rozycki, (Mon Jul 7, 10:01 am)