[kernel] tty/hvc: Use opal irqchip interface if available
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
The Ubuntu-power-systems project |
Fix Released
|
Critical
|
Canonical Kernel Team | ||
linux (Ubuntu) |
Fix Released
|
Critical
|
Unassigned | ||
Xenial |
Fix Released
|
Critical
|
Unassigned |
Bug Description
== SRU Justification ==
This bug is fixed by commit 00dab8187e18. The commit updates the hvc
driver to use the OPAL irqchip if made available by the running firmware.
If it is not present, the driver falls back to the existing OPAL event number.
Commit 00dab8187e18 was added to mainline is v4.8-rc1, so it is not needed in
releases newer than Xenial. The commit is a clean cherry pick in Xenial.
== Fix ==
commit 00dab8187e182da
Author: Sam Mendoza-Jonas <email address hidden>
Date: Mon Jul 11 13:38:58 2016 +1000
tty/hvc: Use opal irqchip interface if available
== Regression Potential ==
This change is specific to the hvc driver and has been in mainline since v4.8-rc1
without any issues reported.
== Test Case ==
A test kernel was built with this patch and tested by the original bug reporter.
The bug reporter states the test kernel resolved the bug.
---Problem Description---
Please backport console irq patch .
commit 00dab8187e182da
Author: Sam Mendoza-Jonas <email address hidden>
Date: Mon Jul 11 13:38:58 2016 +1000
tty/hvc: Use opal irqchip interface if available
Update the hvc driver to use the OPAL irqchip if made available by the
running firmware. If it is not present, the driver falls back to the
existing OPAL event number.
Signed-off-by: Samuel Mendoza-Jonas <email address hidden>
Signed-off-by: Michael Ellerman <email address hidden>
---uname output---
Linux tul217p1 4.4.0-98-generic #121-Ubuntu SMP Tue Oct 10 14:23:01 UTC 2017 ppc64le ppc64le ppc64le GNU/Linux
Machine Type = FSP based PowerNV system
Canonical,
We need this patch in 16.04 GA 4.4 kernel. This fix will avoid the following error:
Oct 19 22:15:07 tul217p1 kernel: sched: RT throttling activated
Oct 19 22:15:49 tul217p1 kernel: INFO: rcu_sched self-detected stall on CPU
Oct 19 22:15:49 tul217p1 kernel: 21-...: (85 GPs behind) idle=d29/
Oct 19 22:15:49 tul217p1 kernel: (t=5250 jiffies g=30019 c=30018 q=20591)
Oct 19 22:15:49 tul217p1 kernel: Call Trace:
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f110] [c0000000000fcbe0] sched_show_
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f180] [c00000000013fcf4] rcu_dump_
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f1d0] [c000000000145424] rcu_check_
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f300] [c00000000014d288] update_
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f330] [c0000000001649b8] tick_sched_
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f370] [c000000000164ab4] tick_sched_
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f3b0] [c00000000014dd54] __hrtimer_
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f440] [c00000000014ed7c] hrtimer_
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f500] [c00000000001f5fc] __timer_
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f550] [c00000000001f9b0] timer_interrupt
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f580] [c0000000000099d8] restore_
Oct 19 22:15:49 tul217p1 kernel: --- interrupt: 901 at arch_local_
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f870] [7fffffffffffffff] 0x7fffffffffffffff (unreliable)
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f890] [c0000000000bf808] __do_softirq+
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f980] [c0000000000bfd88] irq_exit+0xc8/0x100
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f9a0] [c00000000001f9b4] timer_interrupt
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f9d0] [c0000000000099d8] restore_
Oct 19 22:15:49 tul217p1 kernel: --- interrupt: 901 at irq_work_
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0fcc0] [c0000007f4d0fd00] 0xc0000007f4d0fd00 (unreliable)
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0fcf0] [c000000000076a98] opal_handle_
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0fd40] [c000000000070fc8] kopald+0x78/0x100
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0fd80] [c0000000000e7374] kthread+0x124/0x150
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0fe30] [c000000000009538] ret_from_
Oct 19 22:15:54 tul217p1 kernel: NMI watchdog: BUG: soft lockup - CPU#21 stuck for 23s! [kopald:494]
Oct 19 22:15:54 tul217p1 kernel: Modules linked in: ibmpowernv binfmt_misc ipmi_powernv ipmi_msghandler leds_powernv powernv_rng
uio_pdrv_genirq uio vmx_crypto nfsd auth_rpcgss nfs_acl lockd ib_iser grace rdma_cm iw_cm sunrpc ib_cm ib_sa ib_mad ib_core ib_
addr iscsi_tcp libiscsi_tcp libiscsi scsi_transport_
sync_xor async_tx xor raid6_pq libcrc32c raid1 raid0 multipath linear ipr cxl
Oct 19 22:15:54 tul217p1 kernel: CPU: 21 PID: 494 Comm: kopald Not tainted 4.4.0-98-generic #121-Ubuntu
Oct 19 22:15:54 tul217p1 kernel: task: c0000007f4cc3f30 ti: c0000007f4d0c000 task.ti: c0000007f4d0c000
Oct 19 22:15:54 tul217p1 kernel: NIP: c000000000010964 LR: c000000000010964 CTR: c00000000001f100
Oct 19 22:15:54 tul217p1 kernel: REGS: c0000007f4d0f5f0 TRAP: 0901 Not tainted (4.4.0-98-generic)
Oct 19 22:15:54 tul217p1 kernel: MSR: 9000000000009033 <SF,HV,
Oct 19 22:15:54 tul217p1 kernel: CFAR: c000000000009958 SOFTE: 1
Oct 19 22:15:54 tul217p1 kernel: NIP [c000000000010964] arch_local_
Oct 19 22:15:54 tul217p1 kernel: LR [c000000000010964] arch_local_
Oct 19 22:15:54 tul217p1 kernel: Call Trace:
Oct 19 22:15:54 tul217p1 kernel: [c0000007f4d0f870] [7fffffffffffffff] 0x7fffffffffffffff (unreliable)
Oct 19 22:15:54 tul217p1 kernel: [c0000007f4d0f890] [c0000000000bf808] __do_softirq+
Oct 19 22:15:54 tul217p1 kernel: [c0000007f4d0f980] [c0000000000bfd88] irq_exit+0xc8/0x100
Oct 19 22:15:54 tul217p1 kernel: [c0000007f4d0f9a0] [c00000000001f9b4] timer_interrupt
Oct 19 22:15:54 tul217p1 kernel: [c0000007f4d0f9d0] [c0000000000099d8] restore_
Oct 19 22:15:54 tul217p1 kernel: --- interrupt: 901 at irq_work_
Oct 19 22:15:54 tul217p1 kernel: [c0000007f4d0fcc0] [c0000007f4d0fd00] 0xc0000007f4d0fd00 (unreliable)
Oct 19 22:15:54 tul217p1 kernel: [c0000007f4d0fcf0] [c000000000076a98] opal_handle_
Oct 19 22:15:54 tul217p1 kernel: [c0000007f4d0fd40] [c000000000070fc8] kopald+0x78/0x100
Oct 19 22:15:54 tul217p1 kernel: [c0000007f4d0fd80] [c0000000000e7374] kthread+0x124/0x150
Oct 19 22:15:54 tul217p1 kernel: [c0000007f4d0fe30] [c000000000009538] ret_from_
Oct 19 22:15:54 tul217p1 kernel: Instruction dump:
Oct 19 22:15:54 tul217p1 kernel: 994d02ca 2fa30000 409e0024 e92d0020 61298000 7d210164 38210020 e8010010
Oct 19 22:15:54 tul217p1 kernel: 7c0803a6 4e800020 60420000 4bff186d <60000000> 4bffffe4 60420000 e92d0020
Oct 19 22:16:39 tul217p1 kernel: INFO: rcu_sched self-detected stall on CPU
Oct 19 22:16:39 tul217p1 kernel: 16-...: (301 GPs behind) idle=5b5/
Oct 19 22:16:39 tul217p1 kernel: (t=5250 jiffies g=30159 c=30158 q=20605)
Oct 19 22:16:39 tul217p1 kernel: Call Trace:
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f150] [c0000000000fcbe0] sched_show_
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f1c0] [c00000000013fcf4] rcu_dump_
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f210] [c000000000145424] rcu_check_
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f340] [c00000000014d288] update_
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f370] [c0000000001649b8] tick_sched_
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f3b0] [c000000000164ab4] tick_sched_
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f3f0] [c00000000014dd54] __hrtimer_
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f480] [c00000000014ed7c] hrtimer_
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f540] [c00000000001f5fc] __timer_
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f590] [c00000000001f9b0] timer_interrupt
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f5c0] [c0000000000099d8] restore_
Oct 19 22:16:39 tul217p1 kernel: --- interrupt: 901 at arch_local_
CVE References
tags: | added: architecture-ppc64le bugnameltc-160719 severity-critical targetmilestone-inin16044 |
Changed in ubuntu: | |
assignee: | nobody → Ubuntu on IBM Power Systems Bug Triage (ubuntu-power-triage) |
affects: | ubuntu → linux (Ubuntu) |
Changed in ubuntu-power-systems: | |
importance: | Undecided → Critical |
assignee: | nobody → Canonical Kernel Team (canonical-kernel-team) |
Changed in linux (Ubuntu): | |
importance: | Undecided → Critical |
assignee: | Ubuntu on IBM Power Systems Bug Triage (ubuntu-power-triage) → Joseph Salisbury (jsalisbury) |
status: | New → In Progress |
Changed in linux (Ubuntu Xenial): | |
importance: | Undecided → Critical |
status: | New → In Progress |
assignee: | nobody → Joseph Salisbury (jsalisbury) |
Changed in ubuntu-power-systems: | |
status: | New → In Progress |
tags: | added: triage-g |
Changed in linux (Ubuntu Xenial): | |
status: | In Progress → Fix Committed |
Changed in ubuntu-power-systems: | |
status: | In Progress → Fix Committed |
tags: |
added: verification-done-xenial removed: verification-needed-xenial |
Changed in linux (Ubuntu): | |
status: | In Progress → Fix Released |
Changed in ubuntu-power-systems: | |
status: | Fix Committed → Fix Released |
I built a Xenial test kernel with commit 00dab8187e18. The test kernel can be downloaded from: kernel. ubuntu. com/~jsalisbury /lp1728098/
http://
Be sure to install both the linux-image and linux-image-extra .deb packages.