* Re: Regression in 6.8 from "ACPI: OSL: Use a threaded interrupt handler for SCI"
[not found] <205bd84a-fe8e-4963-968e-0763285f35ba@message-id.googlemail.com>
@ 2024-07-08 13:50 ` Wysocki, Rafael J
2024-07-10 13:13 ` Rafael J. Wysocki
0 siblings, 1 reply; 4+ messages in thread
From: Wysocki, Rafael J @ 2024-07-08 13:50 UTC (permalink / raw)
To: Stefan Seyfried; +Cc: LKML, linux-acpi@vger.kernel.org
Hi,
On 7/8/2024 10:07 AM, Stefan Seyfried wrote:
> Hi all,
>
> any kernels after 6.7 break my trusty old Toughbook CF-51 by rendering
> many PCI devices unusable.
>
> I did first notice that i915 did no longer work and filed
> https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11437, there I
> was pointed to commit
>
> commit 7a36b901a6eb0e9945341db71ed3c45c7721cfa9
> Author: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> Date: Mon Nov 27 20:57:43 2023 +0100
>
> ACPI: OSL: Use a threaded interrupt handler for SCI
>
> which I verified with a week-long bisecting from 6.7 to 6.8 (just for
> fun :-)
>
Thanks for reporting this, although it would be nice to put linux-acpi
on the CC.
> Just reverting this commit top of 6.10-rc5 (sorry, this machine is not
> very powerful so I did not try the latest git master) makes everything
> work fine again.
>
> I get these messages in dmesg when running the broken kernels:
>
> [ T308] genirq: Flags mismatch irq 9. 00000080 (yenta) vs. 00002080
> (acpi)
> [ T305] genirq: Flags mismatch irq 9. 00000080 (uhci_hcd:usb1) vs.
> 00002080 (acpi)
> [ T305] genirq: Flags mismatch irq 9. 00000080 (uhci_hcd:usb1) vs.
> 00002080 (acpi)
> [ T46] genirq: Flags mismatch irq 9. 00000080 (ehci_hcd:usb1) vs.
> 00002080 (acpi)
> [ T312] genirq: Flags mismatch irq 9. 00000080 (firewire_ohci) vs.
> 00002080 (acpi)
> [ T305] genirq: Flags mismatch irq 9. 00000080 (uhci_hcd:usb1) vs.
> 00002080 (acpi)
> [ T308] genirq: Flags mismatch irq 9. 00000080 (yenta) vs. 00002080
> (acpi)
> [ T592] genirq: Flags mismatch irq 9. 00000080 (snd_intel8x0) vs.
> 00002080 (acpi)
> [ T581] genirq: Flags mismatch irq 9. 00000080 (i915) vs. 00002080
> (acpi)
> [ T874] genirq: Flags mismatch irq 9. 00000080 (enp2s1) vs. 00002080
> (acpi)
>
> These are not present with that commit reverted.
>
So all of the drivers above attempt to share the IRQ with the SCI and
they don't use IRQF_ONESHOT and because they all are threaded, there is
a flags conflict.
They all need to be made pass IRQF_COND_ONESHOT when requesting
interrupts and it will all work again.
I'll send you a patch for this (hopefully later today), but I guess it
will take a while until it gets absorbed.
Thanks!
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Regression in 6.8 from "ACPI: OSL: Use a threaded interrupt handler for SCI"
2024-07-08 13:50 ` Regression in 6.8 from "ACPI: OSL: Use a threaded interrupt handler for SCI" Wysocki, Rafael J
@ 2024-07-10 13:13 ` Rafael J. Wysocki
2024-07-11 5:04 ` Stefan Seyfried
0 siblings, 1 reply; 4+ messages in thread
From: Rafael J. Wysocki @ 2024-07-10 13:13 UTC (permalink / raw)
To: Stefan Seyfried
Cc: LKML, linux-acpi@vger.kernel.org, Wysocki, Rafael J,
Thomas Gleixner
[-- Attachment #1: Type: text/plain, Size: 2563 bytes --]
On Mon, Jul 8, 2024 at 3:51 PM Wysocki, Rafael J
<rafael.j.wysocki@intel.com> wrote:
>
> Hi,
>
> On 7/8/2024 10:07 AM, Stefan Seyfried wrote:
> > Hi all,
> >
> > any kernels after 6.7 break my trusty old Toughbook CF-51 by rendering
> > many PCI devices unusable.
> >
> > I did first notice that i915 did no longer work and filed
> > https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11437, there I
> > was pointed to commit
> >
> > commit 7a36b901a6eb0e9945341db71ed3c45c7721cfa9
> > Author: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
> > Date: Mon Nov 27 20:57:43 2023 +0100
> >
> > ACPI: OSL: Use a threaded interrupt handler for SCI
> >
> > which I verified with a week-long bisecting from 6.7 to 6.8 (just for
> > fun :-)
> >
> Thanks for reporting this, although it would be nice to put linux-acpi
> on the CC.
>
>
> > Just reverting this commit top of 6.10-rc5 (sorry, this machine is not
> > very powerful so I did not try the latest git master) makes everything
> > work fine again.
> >
> > I get these messages in dmesg when running the broken kernels:
> >
> > [ T308] genirq: Flags mismatch irq 9. 00000080 (yenta) vs. 00002080
> > (acpi)
> > [ T305] genirq: Flags mismatch irq 9. 00000080 (uhci_hcd:usb1) vs.
> > 00002080 (acpi)
> > [ T305] genirq: Flags mismatch irq 9. 00000080 (uhci_hcd:usb1) vs.
> > 00002080 (acpi)
> > [ T46] genirq: Flags mismatch irq 9. 00000080 (ehci_hcd:usb1) vs.
> > 00002080 (acpi)
> > [ T312] genirq: Flags mismatch irq 9. 00000080 (firewire_ohci) vs.
> > 00002080 (acpi)
> > [ T305] genirq: Flags mismatch irq 9. 00000080 (uhci_hcd:usb1) vs.
> > 00002080 (acpi)
> > [ T308] genirq: Flags mismatch irq 9. 00000080 (yenta) vs. 00002080
> > (acpi)
> > [ T592] genirq: Flags mismatch irq 9. 00000080 (snd_intel8x0) vs.
> > 00002080 (acpi)
> > [ T581] genirq: Flags mismatch irq 9. 00000080 (i915) vs. 00002080
> > (acpi)
> > [ T874] genirq: Flags mismatch irq 9. 00000080 (enp2s1) vs. 00002080
> > (acpi)
> >
> > These are not present with that commit reverted.
> >
> So all of the drivers above attempt to share the IRQ with the SCI and
> they don't use IRQF_ONESHOT and because they all are threaded, there is
> a flags conflict.
>
> They all need to be made pass IRQF_COND_ONESHOT when requesting
> interrupts and it will all work again.
>
> I'll send you a patch for this (hopefully later today), but I guess it
> will take a while until it gets absorbed.
>
> Thanks!
So can you please check if the attached patch helps?
[-- Attachment #2: irq-flags-mismatch-fixes.patch --]
[-- Type: text/x-patch, Size: 645 bytes --]
---
include/linux/interrupt.h | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
Index: linux-pm/include/linux/interrupt.h
===================================================================
--- linux-pm.orig/include/linux/interrupt.h
+++ linux-pm/include/linux/interrupt.h
@@ -168,7 +168,8 @@ static inline int __must_check
request_irq(unsigned int irq, irq_handler_t handler, unsigned long flags,
const char *name, void *dev)
{
- return request_threaded_irq(irq, handler, NULL, flags, name, dev);
+ return request_threaded_irq(irq, handler, NULL,
+ flags | IRQF_COND_ONESHOT, name, dev);
}
extern int __must_check
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Regression in 6.8 from "ACPI: OSL: Use a threaded interrupt handler for SCI"
2024-07-10 13:13 ` Rafael J. Wysocki
@ 2024-07-11 5:04 ` Stefan Seyfried
2024-07-11 10:21 ` Rafael J. Wysocki
0 siblings, 1 reply; 4+ messages in thread
From: Stefan Seyfried @ 2024-07-11 5:04 UTC (permalink / raw)
To: Rafael J. Wysocki
Cc: LKML, linux-acpi@vger.kernel.org, Wysocki, Rafael J,
Thomas Gleixner
Hi Rafael,
Am 10.07.24 um 15:13 schrieb Rafael J. Wysocki:
> On Mon, Jul 8, 2024 at 3:51 PM Wysocki, Rafael J
> <rafael.j.wysocki@intel.com> wrote:
>>
>
> So can you please check if the attached patch helps?
Yes, everything works perfectly fine with that applied.
Thanks and best regards,
Stefan
--
Stefan Seyfried
"For a successful technology, reality must take precedence over
public relations, for nature cannot be fooled." -- Richard Feynman
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Regression in 6.8 from "ACPI: OSL: Use a threaded interrupt handler for SCI"
2024-07-11 5:04 ` Stefan Seyfried
@ 2024-07-11 10:21 ` Rafael J. Wysocki
0 siblings, 0 replies; 4+ messages in thread
From: Rafael J. Wysocki @ 2024-07-11 10:21 UTC (permalink / raw)
To: Stefan Seyfried
Cc: Rafael J. Wysocki, LKML, linux-acpi@vger.kernel.org,
Wysocki, Rafael J, Thomas Gleixner
Hi Stefan,
On Thu, Jul 11, 2024 at 7:04 AM Stefan Seyfried
<stefan.seyfried@googlemail.com> wrote:
>
> Hi Rafael,
>
> Am 10.07.24 um 15:13 schrieb Rafael J. Wysocki:
> > On Mon, Jul 8, 2024 at 3:51 PM Wysocki, Rafael J
> > <rafael.j.wysocki@intel.com> wrote:
> >>
> >
> > So can you please check if the attached patch helps?
>
> Yes, everything works perfectly fine with that applied.
>
> Thanks and best regards,
>
Thanks for testing!
Patch submitted, let's see what Thomas has to say about it.
Cheers, Rafael
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-07-11 10:21 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <205bd84a-fe8e-4963-968e-0763285f35ba@message-id.googlemail.com>
2024-07-08 13:50 ` Regression in 6.8 from "ACPI: OSL: Use a threaded interrupt handler for SCI" Wysocki, Rafael J
2024-07-10 13:13 ` Rafael J. Wysocki
2024-07-11 5:04 ` Stefan Seyfried
2024-07-11 10:21 ` Rafael J. Wysocki
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox