* PCI IRQ issue since 4.2 kernel
@ 2016-03-31 13:26 Rob Groner
2016-03-31 13:40 ` Bjorn Helgaas
0 siblings, 1 reply; 6+ messages in thread
From: Rob Groner @ 2016-03-31 13:26 UTC (permalink / raw)
To: linux-pci; +Cc: jiang.liu, bhelgaas, tglx
Greetings,
We became aware of an issue with our Linux drivers when used with a 4.4
kernel. These drivers had worked previously from 2.6.35 to 4.2 kernels.
The symptoms were that, even though the request_irq() call was
successful, we did not receive any IRQs. IRQs did arrive on a different
IRQ line, however, and the kernel disabled that line because there was
no handler.
I can elaborate on this more if you'd like.
With Greg K-H's help, I found the commit where this issue first appears.
He told me to email the people listed in the commit and the pci mailing
list.
Is there something different I need to be doing when I request an IRQ
for my PCI device driver? I checked the 4.2, 4.3, and 4.4 kernel change
logs and did not see anything obvious about the IRQ request process
changing.
Please let me know how to proceed next.
Thank you,
Rob
-----------------------------------------------------------------------
rtd@kernel-dev:~/git/kernels/linux$ git bisect good
991de2e59090e55c65a7f59a049142e3c480f7bd is the first bad commit
commit 991de2e59090e55c65a7f59a049142e3c480f7bd
Author: Jiang Liu <jiang.liu@linux.intel.com>
Date: Wed Jun 10 16:54:59 2015 +0800
PCI, x86: Implement pcibios_alloc_irq() and pcibios_free_irq()
To support IOAPIC hotplug, we need to allocate PCI IRQ resources on
demand
and free them when not used anymore.
Implement pcibios_alloc_irq() and pcibios_free_irq() to dynamically
allocate and free PCI IRQs.
Remove mp_should_keep_irq(), which is no longer used.
[bhelgaas: changelog]
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Acked-by: Thomas Gleixner <tglx@linutronix.de>
:040000 040000 765e2d5232d53247ec260b34b51589c3bccb36ae
f680234a27685e94b1a35ae2a7218f8eafa9071a M arch
:040000 040000 d55a682bcde72682e883365e88ad1df6186fd54d
f82c470a04a6845fcf5e0aa934512c75628f798d M drivers
----------------------------------------------------------------
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: PCI IRQ issue since 4.2 kernel
2016-03-31 13:26 PCI IRQ issue since 4.2 kernel Rob Groner
@ 2016-03-31 13:40 ` Bjorn Helgaas
2016-03-31 13:44 ` Rob Groner
2016-03-31 15:05 ` Rob Groner
0 siblings, 2 replies; 6+ messages in thread
From: Bjorn Helgaas @ 2016-03-31 13:40 UTC (permalink / raw)
To: Rob Groner; +Cc: linux-pci, jiang.liu, bhelgaas, tglx
Hi Rob,
On Thu, Mar 31, 2016 at 09:26:35AM -0400, Rob Groner wrote:
> We became aware of an issue with our Linux drivers when used with a 4.4
> kernel. These drivers had worked previously from 2.6.35 to 4.2 kernels.
> The symptoms were that, even though the request_irq() call was
> successful, we did not receive any IRQs. IRQs did arrive on a different
> IRQ line, however, and the kernel disabled that line because there was
> no handler.
Others have seen similar issues, so we reverted 991de2e59090 ("PCI, x86:
Implement pcibios_alloc_irq() and pcibios_free_irq()").
The revert, 6c777e8799a9 ("Revert "PCI, x86: Implement pcibios_alloc_irq()
and pcibios_free_irq()""), appeared in v4.5-rc6, so if you try that or a
later kernel (including v4.5), it should work.
Let us know if you still see problems.
Bjorn
> -----------------------------------------------------------------------
> rtd@kernel-dev:~/git/kernels/linux$ git bisect good
> 991de2e59090e55c65a7f59a049142e3c480f7bd is the first bad commit
> commit 991de2e59090e55c65a7f59a049142e3c480f7bd
> Author: Jiang Liu <jiang.liu@linux.intel.com>
> Date: Wed Jun 10 16:54:59 2015 +0800
>
> PCI, x86: Implement pcibios_alloc_irq() and pcibios_free_irq()
>
> To support IOAPIC hotplug, we need to allocate PCI IRQ resources on
> demand
> and free them when not used anymore.
>
> Implement pcibios_alloc_irq() and pcibios_free_irq() to dynamically
> allocate and free PCI IRQs.
>
> Remove mp_should_keep_irq(), which is no longer used.
>
> [bhelgaas: changelog]
> Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com>
> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
> Acked-by: Thomas Gleixner <tglx@linutronix.de>
>
> :040000 040000 765e2d5232d53247ec260b34b51589c3bccb36ae
> f680234a27685e94b1a35ae2a7218f8eafa9071a M arch
> :040000 040000 d55a682bcde72682e883365e88ad1df6186fd54d
> f82c470a04a6845fcf5e0aa934512c75628f798d M drivers
> ----------------------------------------------------------------
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-pci" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: PCI IRQ issue since 4.2 kernel
2016-03-31 13:40 ` Bjorn Helgaas
@ 2016-03-31 13:44 ` Rob Groner
2016-03-31 15:05 ` Rob Groner
1 sibling, 0 replies; 6+ messages in thread
From: Rob Groner @ 2016-03-31 13:44 UTC (permalink / raw)
To: Bjorn Helgaas
Cc: linux-pci@vger.kernel.org, jiang.liu@linux.intel.com,
bhelgaas@google.com, tglx@linutronix.de
On Thu, 2016-03-31 at 09:40 -0400, Bjorn Helgaas wrote:
> Hi Rob,
>
> On Thu, Mar 31, 2016 at 09:26:35AM -0400, Rob Groner wrote:
> > We became aware of an issue with our Linux drivers when used with a 4.4
> > kernel. These drivers had worked previously from 2.6.35 to 4.2 kernels.
> > The symptoms were that, even though the request_irq() call was
> > successful, we did not receive any IRQs. IRQs did arrive on a different
> > IRQ line, however, and the kernel disabled that line because there was
> > no handler.
>
> Others have seen similar issues, so we reverted 991de2e59090 ("PCI, x86:
> Implement pcibios_alloc_irq() and pcibios_free_irq()").
>
> The revert, 6c777e8799a9 ("Revert "PCI, x86: Implement pcibios_alloc_irq()
> and pcibios_free_irq()""), appeared in v4.5-rc6, so if you try that or a
> later kernel (including v4.5), it should work.
>
> Let us know if you still see problems.
>
> Bjorn
Thank you! I will try the 4.5 kernel from kernel.org today.
Rob
> > -----------------------------------------------------------------------
> > rtd@kernel-dev:~/git/kernels/linux$ git bisect good
> > 991de2e59090e55c65a7f59a049142e3c480f7bd is the first bad commit
> > commit 991de2e59090e55c65a7f59a049142e3c480f7bd
> > Author: Jiang Liu <jiang.liu@linux.intel.com>
> > Date: Wed Jun 10 16:54:59 2015 +0800
> >
> > PCI, x86: Implement pcibios_alloc_irq() and pcibios_free_irq()
> >
> > To support IOAPIC hotplug, we need to allocate PCI IRQ resources on
> > demand
> > and free them when not used anymore.
> >
> > Implement pcibios_alloc_irq() and pcibios_free_irq() to dynamically
> > allocate and free PCI IRQs.
> >
> > Remove mp_should_keep_irq(), which is no longer used.
> >
> > [bhelgaas: changelog]
> > Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com>
> > Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
> > Acked-by: Thomas Gleixner <tglx@linutronix.de>
> >
> > :040000 040000 765e2d5232d53247ec260b34b51589c3bccb36ae
> > f680234a27685e94b1a35ae2a7218f8eafa9071a M arch
> > :040000 040000 d55a682bcde72682e883365e88ad1df6186fd54d
> > f82c470a04a6845fcf5e0aa934512c75628f798d M drivers
> > ----------------------------------------------------------------
> >
> > --
> > To unsubscribe from this list: send the line "unsubscribe linux-pci" in
> > the body of a message to majordomo@vger.kernel.org
> > More majordomo info at https://na01.safelinks.protection.outlook.com/?url=http%3a%2f%2fvger.kernel.org%2fmajordomo-info.html&data=01%7c01%7crgroner%40rtd.com%7c4e5022d941bc4c056cfe08d35969f836%7c16f82b7977b8423dbafdd6c19032e267%7c1&sdata=4iqUGR6coY75Peouz%2buK6NUAk9pQFAHsGemGwzFXlc0%3d
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: PCI IRQ issue since 4.2 kernel
2016-03-31 13:40 ` Bjorn Helgaas
2016-03-31 13:44 ` Rob Groner
@ 2016-03-31 15:05 ` Rob Groner
2016-03-31 15:14 ` Bjorn Helgaas
1 sibling, 1 reply; 6+ messages in thread
From: Rob Groner @ 2016-03-31 15:05 UTC (permalink / raw)
To: Bjorn Helgaas
Cc: linux-pci@vger.kernel.org, jiang.liu@linux.intel.com,
bhelgaas@google.com, tglx@linutronix.de
On Thu, 2016-03-31 at 09:40 -0400, Bjorn Helgaas wrote:
> Hi Rob,
>
> On Thu, Mar 31, 2016 at 09:26:35AM -0400, Rob Groner wrote:
> > We became aware of an issue with our Linux drivers when used with a 4.4
> > kernel. These drivers had worked previously from 2.6.35 to 4.2 kernels.
> > The symptoms were that, even though the request_irq() call was
> > successful, we did not receive any IRQs. IRQs did arrive on a different
> > IRQ line, however, and the kernel disabled that line because there was
> > no handler.
>
> Others have seen similar issues, so we reverted 991de2e59090 ("PCI, x86:
> Implement pcibios_alloc_irq() and pcibios_free_irq()").
>
> The revert, 6c777e8799a9 ("Revert "PCI, x86: Implement pcibios_alloc_irq()
> and pcibios_free_irq()""), appeared in v4.5-rc6, so if you try that or a
> later kernel (including v4.5), it should work.
>
> Let us know if you still see problems.
>
> Bjorn
I installed the 4.5 kernel from kernel.org and my issue has been
resolved. Thank you very much!
Will this revert possibly make it into 4.3 and 4.4, or will I have to
tell people to avoid those versions?
Thanks!
Rob
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: PCI IRQ issue since 4.2 kernel
2016-03-31 15:05 ` Rob Groner
@ 2016-03-31 15:14 ` Bjorn Helgaas
2016-03-31 15:17 ` Rob Groner
0 siblings, 1 reply; 6+ messages in thread
From: Bjorn Helgaas @ 2016-03-31 15:14 UTC (permalink / raw)
To: Rob Groner
Cc: linux-pci@vger.kernel.org, jiang.liu@linux.intel.com,
bhelgaas@google.com, tglx@linutronix.de
On Thu, Mar 31, 2016 at 11:05:57AM -0400, Rob Groner wrote:
> On Thu, 2016-03-31 at 09:40 -0400, Bjorn Helgaas wrote:
> > Hi Rob,
> >
> > On Thu, Mar 31, 2016 at 09:26:35AM -0400, Rob Groner wrote:
> > > We became aware of an issue with our Linux drivers when used with a 4.4
> > > kernel. These drivers had worked previously from 2.6.35 to 4.2 kernels.
> > > The symptoms were that, even though the request_irq() call was
> > > successful, we did not receive any IRQs. IRQs did arrive on a different
> > > IRQ line, however, and the kernel disabled that line because there was
> > > no handler.
> >
> > Others have seen similar issues, so we reverted 991de2e59090 ("PCI, x86:
> > Implement pcibios_alloc_irq() and pcibios_free_irq()").
> >
> > The revert, 6c777e8799a9 ("Revert "PCI, x86: Implement pcibios_alloc_irq()
> > and pcibios_free_irq()""), appeared in v4.5-rc6, so if you try that or a
> > later kernel (including v4.5), it should work.
> >
> > Let us know if you still see problems.
> >
> > Bjorn
>
> I installed the 4.5 kernel from kernel.org and my issue has been
> resolved. Thank you very much!
>
> Will this revert possibly make it into 4.3 and 4.4, or will I have to
> tell people to avoid those versions?
Shoot, I forgot to mark that revert for stable. I'll see if I can
figure out how to do that after the fact. Of course, you'll still
have to tell people to use the latest 4.3.x or 4.4.x stable kernels,
not the original 4.3 and 4.5.
Bjorn
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: PCI IRQ issue since 4.2 kernel
2016-03-31 15:14 ` Bjorn Helgaas
@ 2016-03-31 15:17 ` Rob Groner
0 siblings, 0 replies; 6+ messages in thread
From: Rob Groner @ 2016-03-31 15:17 UTC (permalink / raw)
To: Bjorn Helgaas
Cc: linux-pci@vger.kernel.org, jiang.liu@linux.intel.com,
bhelgaas@google.com, tglx@linutronix.de
On Thu, 2016-03-31 at 10:14 -0500, Bjorn Helgaas wrote:
> On Thu, Mar 31, 2016 at 11:05:57AM -0400, Rob Groner wrote:
> > On Thu, 2016-03-31 at 09:40 -0400, Bjorn Helgaas wrote:
> > > Hi Rob,
> > >
> > > On Thu, Mar 31, 2016 at 09:26:35AM -0400, Rob Groner wrote:
> > > > We became aware of an issue with our Linux drivers when used with a 4.4
> > > > kernel. These drivers had worked previously from 2.6.35 to 4.2 kernels.
> > > > The symptoms were that, even though the request_irq() call was
> > > > successful, we did not receive any IRQs. IRQs did arrive on a different
> > > > IRQ line, however, and the kernel disabled that line because there was
> > > > no handler.
> > >
> > > Others have seen similar issues, so we reverted 991de2e59090 ("PCI, x86:
> > > Implement pcibios_alloc_irq() and pcibios_free_irq()").
> > >
> > > The revert, 6c777e8799a9 ("Revert "PCI, x86: Implement pcibios_alloc_irq()
> > > and pcibios_free_irq()""), appeared in v4.5-rc6, so if you try that or a
> > > later kernel (including v4.5), it should work.
> > >
> > > Let us know if you still see problems.
> > >
> > > Bjorn
> >
> > I installed the 4.5 kernel from https://na01.safelinks.protection.outlook.com/?url=kernel.org&data=01%7c01%7crgroner%40rtd.com%7c008e1e58aa0c4690a8b208d359771c14%7c16f82b7977b8423dbafdd6c19032e267%7c1&sdata=rZhvAmnOFRBM9kCk97hFxVJ4Q%2fharqu1CpSfPhyawyY%3d and my issue has been
> > resolved. Thank you very much!
> >
> > Will this revert possibly make it into 4.3 and 4.4, or will I have to
> > tell people to avoid those versions?
>
> Shoot, I forgot to mark that revert for stable. I'll see if I can
> figure out how to do that after the fact. Of course, you'll still
> have to tell people to use the latest 4.3.x or 4.4.x stable kernels,
> not the original 4.3 and 4.5.
>
> Bjorn
Ok, will do. Thanks!
Rob
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2016-03-31 15:52 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-03-31 13:26 PCI IRQ issue since 4.2 kernel Rob Groner
2016-03-31 13:40 ` Bjorn Helgaas
2016-03-31 13:44 ` Rob Groner
2016-03-31 15:05 ` Rob Groner
2016-03-31 15:14 ` Bjorn Helgaas
2016-03-31 15:17 ` Rob Groner
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).