"irqfixup" and "irqpoll" broken since 2.6.39
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Linux |
Fix Released
|
Undecided
|
Edward Donovan | ||
linux (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Oneiric |
Fix Released
|
Undecided
|
Tim Gardner | ||
Precise |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
In all kernels since 2.6.39, the "irqfixup" and "irqpoll" options are no longer taking effect.
The interrupts now generate the same errors seen without these kernel options, e.g.:
irq 19: nobody cared (try booting with the "irqpoll" option)
even though irqpoll, or irqfixup, is used.
The Linux irq code was reworked during the 2.6.39 cycle. I have gone through the patches, isolated two regressions, and submitted patches for each.
The first bug effectively disabled the bad-irq handling routines, by a test condition be accidentally reversed. This is the commit where the regression arrives:
commit d05c65fff0 , genirq: spurious: Run only one poller at a time
The maintainer has accepted my patch for that, and it's on its way into releases: it will be in Linux 3.2, and upcoming stable releases, likely 3.0.11 and 3.1.3. And it's marked as committed to Oneirc now. It's attached here, and is in Linus' tree at:
That bug disabled irqfixup & irqpoll for everybody. But with that fixed, I had some machines where those kernel options still failed. I bisected that problem to here:
commit fa27271bc , genirq: Fixup poll handling
I've submitted another patch, for that regression, and Linus merged it. Yay. So 3.2 should be good, and 3.0/3.1 updates in a bit -- it took a month, last time.
Related branches
Changed in linux (Ubuntu): | |
status: | New → Confirmed |
Changed in linux (Ubuntu): | |
status: | Incomplete → Confirmed |
Changed in linux (Ubuntu): | |
status: | Incomplete → Confirmed |
description: | updated |
tags: | added: regression-release |
tags: | removed: needs-upstream-testing |
description: | updated |
Changed in linux (Ubuntu): | |
status: | Confirmed → Triaged |
summary: |
- 2.6.39 and later have lost "irqpoll" functionality + 2.6.39 and later have lost "irqfixup" and "irqpoll" functionality |
tags: | added: irqfixup irqpoll |
Changed in linux: | |
status: | New → Confirmed |
Changed in mythbuntu: | |
status: | New → Confirmed |
description: | updated |
description: | updated |
summary: |
- 2.6.39 and later have lost "irqfixup" and "irqpoll" functionality + "irqfixup" and "irqpoll" broken since 2.6.39 |
description: | updated |
description: | updated |
description: | updated |
tags: | added: kernel-bug patch-forwarded-upstream |
description: | updated |
description: | updated |
description: | updated |
tags: |
added: patch-accepted-upstream removed: amd64 |
Changed in linux (Ubuntu Precise): | |
status: | Triaged → Fix Released |
Changed in linux (Ubuntu Oneiric): | |
status: | New → In Progress |
assignee: | nobody → Tim Gardner (timg-tpi) |
Changed in linux (Ubuntu Oneiric): | |
status: | In Progress → Fix Committed |
description: | updated |
tags: | removed: patch-forwarded-upstream |
Changed in linux (Ubuntu Oneiric): | |
status: | Fix Released → Fix Committed |
no longer affects: | mythbuntu |
Thank you for taking the time to file a bug report on this issue.
However, given the number of bugs that the Kernel Team receives during any development cycle it is impossible for us to review them all. Therefore, we occasionally resort to using automated bots to request further testing. This is such a request.
We have noted that there is a newer version of the development kernel than the one you last tested when this issue was found. Please test again with the newer kernel and indicate in the bug if this issue still exists or not.
If the bug still exists, change the bug status from Incomplete to Confirmed. If the bug no longer exists, change the bug status from Incomplete to Fix Released.
Thank you for your help, we really do appreciate it.