Message ID | 54E1B5A6.7030404@canonical.com |
---|---|
State | New |
Headers | show |
On Mon, 2015-02-16 at 10:17 +0100, Stefan Bader wrote: > Andy, there has been no feedback on the fixup, yet. Just a heads-up that the bug > fix for Xen acpi irq seems to have some nasty side-effect for some laptops... Hi Stefan, I'm prepping another upload for Vivid. I've purposely left the backport of b568b8601f05 sitting on Vivid master-next and not a part of the upload until the regression is sorted. Do keep us posted. Thanks, Leann > -------- Forwarded Message -------- > Subject: [PATCH] x86, irq: Fix regression caused by commit b568b8601f05 > Date: Mon, 16 Feb 2015 10:11:13 +0800 > From: Jiang Liu <jiang.liu@linux.intel.com> > To: Ville Syrjälä <syrjala@sci.fi>, Rafael J. Wysocki <rjw@rjwysocki.net>, Len > Brown <len.brown@intel.com>, Pavel Machek <pavel@ucw.cz>, Thomas Gleixner > <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, H. Peter Anvin > <hpa@zytor.com>, x86@kernel.org > CC: Jiang Liu <jiang.liu@linux.intel.com>, Sander Eikelenboom > <linux@eikelenboom.it>, linux-acpi@vger.kernel.org, linux-pm@vger.kernel.org, > linux-kernel@vger.kernel.org > > Commit b568b8601f05 ("Treat SCI interrupt as normal GSI interrupt") > accidently removes support of legacy PIC interrupt when fixing a > regression for Xen, which causes a nasty regression on HP/Compaq > nc6000 where we fail to register the ACPI interrupt, and thus > lose eg. thermal notifications leading a potentially overheated > machine. > > So reintroduce support of legacy PIC based ACPI SCI interrupt. > > Reported-by: Ville Syrjälä <syrjala@sci.fi> > Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com> > --- > Hi Ville, > Could you please help to try this patch instead of revert commit > b568b8601f05? > Thanks! > Gerry > --- > arch/x86/kernel/acpi/boot.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c > index ae97ed0873c6..3d525c6124f6 100644 > --- a/arch/x86/kernel/acpi/boot.c > +++ b/arch/x86/kernel/acpi/boot.c > @@ -613,6 +613,11 @@ int acpi_gsi_to_irq(u32 gsi, unsigned int *irqp) > { > int rc, irq, trigger, polarity; > > + if (acpi_irq_model == ACPI_IRQ_MODEL_PIC) { > + *irqp = gsi; > + return 0; > + } > + > rc = acpi_get_override_irq(gsi, &trigger, &polarity); > if (rc == 0) { > trigger = trigger ? ACPI_LEVEL_SENSITIVE : ACPI_EDGE_SENSITIVE;
On 18.02.2015 04:35, Leann Ogasawara wrote: > On Mon, 2015-02-16 at 10:17 +0100, Stefan Bader wrote: >> Andy, there has been no feedback on the fixup, yet. Just a heads-up that the bug >> fix for Xen acpi irq seems to have some nasty side-effect for some laptops... > > Hi Stefan, > > I'm prepping another upload for Vivid. I've purposely left the backport > of b568b8601f05 sitting on Vivid master-next and not a part of the > upload until the regression is sorted. Do keep us posted. Will do. So far the reporter of the regression confirmed that the proposed patch does fix his issue. Though I have not seen it in linux-next or linux, yet. -Stefan > > Thanks, > Leann > >> -------- Forwarded Message -------- >> Subject: [PATCH] x86, irq: Fix regression caused by commit b568b8601f05 >> Date: Mon, 16 Feb 2015 10:11:13 +0800 >> From: Jiang Liu <jiang.liu@linux.intel.com> >> To: Ville Syrjälä <syrjala@sci.fi>, Rafael J. Wysocki <rjw@rjwysocki.net>, Len >> Brown <len.brown@intel.com>, Pavel Machek <pavel@ucw.cz>, Thomas Gleixner >> <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, H. Peter Anvin >> <hpa@zytor.com>, x86@kernel.org >> CC: Jiang Liu <jiang.liu@linux.intel.com>, Sander Eikelenboom >> <linux@eikelenboom.it>, linux-acpi@vger.kernel.org, linux-pm@vger.kernel.org, >> linux-kernel@vger.kernel.org >> >> Commit b568b8601f05 ("Treat SCI interrupt as normal GSI interrupt") >> accidently removes support of legacy PIC interrupt when fixing a >> regression for Xen, which causes a nasty regression on HP/Compaq >> nc6000 where we fail to register the ACPI interrupt, and thus >> lose eg. thermal notifications leading a potentially overheated >> machine. >> >> So reintroduce support of legacy PIC based ACPI SCI interrupt. >> >> Reported-by: Ville Syrjälä <syrjala@sci.fi> >> Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com> >> --- >> Hi Ville, >> Could you please help to try this patch instead of revert commit >> b568b8601f05? >> Thanks! >> Gerry >> --- >> arch/x86/kernel/acpi/boot.c | 5 +++++ >> 1 file changed, 5 insertions(+) >> >> diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c >> index ae97ed0873c6..3d525c6124f6 100644 >> --- a/arch/x86/kernel/acpi/boot.c >> +++ b/arch/x86/kernel/acpi/boot.c >> @@ -613,6 +613,11 @@ int acpi_gsi_to_irq(u32 gsi, unsigned int *irqp) >> { >> int rc, irq, trigger, polarity; >> >> + if (acpi_irq_model == ACPI_IRQ_MODEL_PIC) { >> + *irqp = gsi; >> + return 0; >> + } >> + >> rc = acpi_get_override_irq(gsi, &trigger, &polarity); >> if (rc == 0) { >> trigger = trigger ? ACPI_LEVEL_SENSITIVE : ACPI_EDGE_SENSITIVE; > > >
On 18.02.2015 04:35, Leann Ogasawara wrote: > On Mon, 2015-02-16 at 10:17 +0100, Stefan Bader wrote: >> Andy, there has been no feedback on the fixup, yet. Just a heads-up that the bug >> fix for Xen acpi irq seems to have some nasty side-effect for some laptops... > > Hi Stefan, > > I'm prepping another upload for Vivid. I've purposely left the backport > of b568b8601f05 sitting on Vivid master-next and not a part of the > upload until the regression is sorted. Do keep us posted. > Now "alive" upstream (tagged stable): commit 1ea76fbadd667b19c4fa4466f3a3b55a505e83d9 Author: Jiang Liu <jiang.liu@linux.intel.com> Date: Mon Feb 16 10:11:13 2015 +0800 x86/irq: Fix regression caused by commit b568b8601f05 Commit b568b8601f05 ("Treat SCI interrupt as normal GSI interrupt") accidently removes support of legacy PIC interrupt when fixing a regression for Xen, which causes a nasty regression on HP/Compaq nc6000 where we fail to register the ACPI interrupt, and thus lose eg. thermal notifications leading a potentially overheated machine. So reintroduce support of legacy PIC based ACPI SCI interrupt. Reported-by: Ville Syrjälä <syrjala@sci.fi> Tested-by: Ville Syrjälä <syrjala@sci.fi> Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Acked-by: Pavel Machek <pavel@ucw.cz> Cc: <stable@vger.kernel.org> # 3.19+ Cc: H. Peter Anvin <hpa@zytor.com> Cc: Len Brown <len.brown@intel.com> Cc: Linus Torvalds <torvalds@linux-foundation.org>
diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c index ae97ed0873c6..3d525c6124f6 100644 --- a/arch/x86/kernel/acpi/boot.c +++ b/arch/x86/kernel/acpi/boot.c @@ -613,6 +613,11 @@ int acpi_gsi_to_irq(u32 gsi, unsigned int *irqp) { int rc, irq, trigger, polarity; + if (acpi_irq_model == ACPI_IRQ_MODEL_PIC) { + *irqp = gsi; + return 0; + } + rc = acpi_get_override_irq(gsi, &trigger, &polarity); if (rc == 0) { trigger = trigger ? ACPI_LEVEL_SENSITIVE : ACPI_EDGE_SENSITIVE;