linux-next.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: "Maciej W. Rozycki" <macro@linux-mips.org>
Cc: Ingo Molnar <mingo@elte.hu>,
	Matthew Garrett <mjg59@srcf.ucam.org>,
	Len Brown <lenb@kernel.org>, Thomas Gleixner <tglx@linutronix.de>,
	linux-next@vger.kernel.org, linux-acpi@vger.kernel.org,
	linux-kernel@vger.kernel.org, Andi Kleen <andi@firstfloor.org>
Subject: Re: [PATCH 2/2] acpi: Disable IRQ 0 through I/O APIC for some HP systems
Date: Mon, 7 Jul 2008 20:09:32 +0200	[thread overview]
Message-ID: <200807072009.33513.rjw@sisk.pl> (raw)
In-Reply-To: <Pine.LNX.4.55.0807071743280.20615@cliff.in.clinika.pl>

On Monday, 7 of July 2008, Maciej W. Rozycki wrote:
> On Mon, 7 Jul 2008, Rafael J. Wysocki wrote:
> 
> > BTW, did you even to look at the code _as_ _is_ in linux-next?
> 
>  Well, I hope it has not changed too much since my recent work in this 
> area...

Please look at it.

> > In fact, it is _impossible_ that either apic1 or pin1 are equal to -1 at this
> > point, because of this part:
> 
>  With the workaround activated it is virtually certain.

Which workaround?

There are no any workarounds related to this problem in the 20080704 linux-next
and that's what my patch was against.

> > 	/*
> > 	 * Some BIOS writers are clueless and report the ExtINTA
> > 	 * I/O APIC input from the cascaded 8259A as the timer
> > 	 * interrupt input.  So just in case, if only one pin
> > 	 * was found above, try it both directly and through the
> > 	 * 8259A.
> > 	 */
> > 	if (pin1 == -1) {
> > 		pin1 = pin2;
> > 		apic1 = apic2;
> > 		no_pin1 = 1;
> > 	} else if (pin2 == -1) {
> > 		pin2 = pin1;
> > 		apic2 = apic1;
> > 	}
> > 
> > that originates from your patch.
> 
>  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.
> 
> > End even without this part apic1 and pin1 are _not_ equal to -1 on this box
> > (apic2 and pin2 are, but that's a different matter).
> 
>  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.

I used those DMI IDs and your quirk didn't work, even after removing the
dependency of acpi_dmi_table[] from __i386__.  For this reason, I prepared an
alternative patch that did work and posted it for your information.

Now, you're saying that my patch couldn't work, while in fact it did.

Thanks,
Rafael

  parent reply	other threads:[~2008-07-07 18:09 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-07-01  0:12 [PATCH 2/2] acpi: Disable IRQ 0 through I/O APIC for some HP systems Maciej W. Rozycki
2008-07-01  0:17 ` Matthew Garrett
2008-07-01  8:46   ` Ingo Molnar
2008-07-01 19:58     ` Rafael J. Wysocki
2008-07-01 20:24       ` Ingo Molnar
2008-07-04 21:21         ` Rafael J. Wysocki
2008-07-06 23:02         ` Rafael J. Wysocki
2008-07-07  1:19           ` Rafael J. Wysocki
2008-07-07  7:17             ` Ingo Molnar
2008-07-07  7:36               ` Ingo Molnar
2008-07-07 12:24                 ` Rafael J. Wysocki
2008-07-07 11:41               ` Maciej W. Rozycki
2008-07-07 12:23                 ` Rafael J. Wysocki
2008-07-07 14:01                   ` Maciej W. Rozycki
2008-07-07 18:03                     ` Rafael J. Wysocki
2008-07-07 20:10                       ` Maciej W. Rozycki
2008-07-07 20:31                         ` Rafael J. Wysocki
2008-07-07 21:39                           ` Maciej W. Rozycki
2008-07-07 22:10                             ` Rafael J. Wysocki
2008-07-07 12:28                 ` Rafael J. Wysocki
2008-07-07 17:10                   ` Maciej W. Rozycki
2008-07-07 17:51                     ` Ray Lee
2008-07-07 18:09                     ` Rafael J. Wysocki [this message]
2008-07-07 19:59             ` Maciej W. Rozycki
2008-07-07 20:17               ` Rafael J. Wysocki
2008-07-07 21:38                 ` Maciej W. Rozycki
2008-07-07 20:30               ` Maciej W. Rozycki
2008-07-07  3:54 ` Zhao Forrest
2008-07-07 12:34   ` Rafael J. Wysocki
2008-07-08 11:24 ` Andreas Herrmann
2008-07-08 14:39   ` Maciej W. Rozycki
2008-07-08 15:27   ` Rafael J. Wysocki
2008-07-08 16:25     ` Maciej W. Rozycki
2008-07-08 16:54       ` Rafael J. Wysocki
     [not found] <fa.OuKI5CNmq3HqeBQCfWOUtrq4+oA@ifi.uio.no>
2008-07-03  5:44 ` Robert Hancock

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=200807072009.33513.rjw@sisk.pl \
    --to=rjw@sisk.pl \
    --cc=andi@firstfloor.org \
    --cc=lenb@kernel.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-next@vger.kernel.org \
    --cc=macro@linux-mips.org \
    --cc=mingo@elte.hu \
    --cc=mjg59@srcf.ucam.org \
    --cc=tglx@linutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).