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/140000000000002/0 softirq=26316/26316 fqs=4417
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_task+0xe0/0x180 (unreliable)
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f180] [c00000000013fcf4] rcu_dump_cpu_stacks+0xe4/0x150
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f1d0] [c000000000145424] rcu_check_callbacks+0x6b4/0x9b0
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f300] [c00000000014d288] update_process_times+0x58/0xa0
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f330] [c0000000001649b8] tick_sched_handle.isra.6+0x48/0xe0
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f370] [c000000000164ab4] tick_sched_timer+0x64/0xd0
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f3b0] [c00000000014dd54] __hrtimer_run_queues+0x124/0x450
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f440] [c00000000014ed7c] hrtimer_interrupt+0xec/0x2c0
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f500] [c00000000001f5fc] __timer_interrupt+0x8c/0x290
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f550] [c00000000001f9b0] timer_interrupt+0xa0/0xe0
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f580] [c0000000000099d8] restore_check_irq_replay+0x54/0x70
Oct 19 22:15:49 tul217p1 kernel: --- interrupt: 901 at arch_local_irq_restore+0x74/0x90 LR = arch_local_irq_restore+0x74/0x90
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f870] [7fffffffffffffff] 0x7fffffffffffffff (unreliable)
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f890] [c0000000000bf808] __do_softirq+0xd8/0x3e0
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f980] [c0000000000bfd88] irq_exit+0xc8/0x100
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f9a0] [c00000000001f9b4] timer_interrupt+0xa4/0xe0
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0f9d0] [c0000000000099d8] restore_check_irq_replay+0x54/0x70
Oct 19 22:15:49 tul217p1 kernel: --- interrupt: 901 at irq_work_queue+0x60/0xd0 LR = irq_work_queue+0xa4/0xd0
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0fcc0] [c0000007f4d0fd00] 0xc0000007f4d0fd00 (unreliable)
Oct 19 22:15:49 tul217p1 kernel: [c0000007f4d0fcf0] [c000000000076a98] opal_handle_events+0x108/0x130
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_kernel_thread+0x5c/0xa4
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_iscsi autofs4 btrfs raid10 raid456 async_raid6_recov async_memcpy async_pq a
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,EE,ME,IR,DR,RI,LE> CR: 28000824 XER: 20000000
Oct 19 22:15:54 tul217p1 kernel: CFAR: c000000000009958 SOFTE: 1 GPR00: c0000000000bf808 c0000007f4d0f870 c000000001608300 0000000000000900 GPR04: c0000007fbd40400 0000000000000001 0000000000000018 0000000001f404db GPR08: 0000000000000000 0000000000000000 c0000007f4d0c000 0000000000000005 GPR12: c00000000006e3c8 c00000000fb4c780
Oct 19 22:15:54 tul217p1 kernel: NIP [c000000000010964] arch_local_irq_restore+0x74/0x90
Oct 19 22:15:54 tul217p1 kernel: LR [c000000000010964] arch_local_irq_restore+0x74/0x90
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+0xd8/0x3e0
Oct 19 22:15:54 tul217p1 kernel: [c0000007f4d0f980] [c0000000000bfd88] irq_exit+0xc8/0x100
Oct 19 22:15:54 tul217p1 kernel: [c0000007f4d0f9a0] [c00000000001f9b4] timer_interrupt+0xa4/0xe0
Oct 19 22:15:54 tul217p1 kernel: [c0000007f4d0f9d0] [c0000000000099d8] restore_check_irq_replay+0x54/0x70
Oct 19 22:15:54 tul217p1 kernel: --- interrupt: 901 at irq_work_queue+0x60/0xd0 LR = irq_work_queue+0xa4/0xd0
Oct 19 22:15:54 tul217p1 kernel: [c0000007f4d0fcc0] [c0000007f4d0fd00] 0xc0000007f4d0fd00 (unreliable)
Oct 19 22:15:54 tul217p1 kernel: [c0000007f4d0fcf0] [c000000000076a98] opal_handle_events+0x108/0x130
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_kernel_thread+0x5c/0xa4
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/140000000000002/0 softirq=2284/2284 fqs=4838
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_task+0xe0/0x180 (unreliable)
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f1c0] [c00000000013fcf4] rcu_dump_cpu_stacks+0xe4/0x150
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f210] [c000000000145424] rcu_check_callbacks+0x6b4/0x9b0
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f340] [c00000000014d288] update_process_times+0x58/0xa0
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f370] [c0000000001649b8] tick_sched_handle.isra.6+0x48/0xe0
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f3b0] [c000000000164ab4] tick_sched_timer+0x64/0xd0
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f3f0] [c00000000014dd54] __hrtimer_run_queues+0x124/0x450
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f480] [c00000000014ed7c] hrtimer_interrupt+0xec/0x2c0
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f540] [c00000000001f5fc] __timer_interrupt+0x8c/0x290
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f590] [c00000000001f9b0] timer_interrupt+0xa0/0xe0
Oct 19 22:16:39 tul217p1 kernel: [c0000007f4d0f5c0] [c0000000000099d8] restore_check_irq_replay+0x54/0x70
Oct 19 22:16:39 tul217p1 kernel: --- interrupt: 901 at arch_local_irq_restore+0x74/0x90
---Problem Description---
Please backport console irq patch .
commit 00dab8187e182da 41122f66c207707 b192509df4
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 140000000000002 /0 softirq=26316/26316 fqs=4417 task+0xe0/ 0x180 (unreliable) cpu_stacks+ 0xe4/0x150 callbacks+ 0x6b4/0x9b0 process_ times+0x58/ 0xa0 handle. isra.6+ 0x48/0xe0 timer+0x64/ 0xd0 run_queues+ 0x124/0x450 interrupt+ 0xec/0x2c0 interrupt+ 0x8c/0x290 +0xa0/0xe0 check_irq_ replay+ 0x54/0x70 irq_restore+ 0x74/0x90
LR = arch_local_ irq_restore+ 0x74/0x90 0xd8/0x3e0 +0xa4/0xe0 check_irq_ replay+ 0x54/0x70 queue+0x60/ 0xd0
LR = irq_work_ queue+0xa4/ 0xd0 events+ 0x108/0x130 kernel_ thread+ 0x5c/0xa4 iscsi autofs4 btrfs raid10 raid456 async_raid6_recov async_memcpy async_pq a EE,ME,IR, DR,RI,LE> CR: 28000824 XER: 20000000
GPR00: c0000000000bf808 c0000007f4d0f870 c000000001608300 0000000000000900
GPR04: c0000007fbd40400 0000000000000001 0000000000000018 0000000001f404db
GPR08: 0000000000000000 0000000000000000 c0000007f4d0c000 0000000000000005
GPR12: c00000000006e3c8 c00000000fb4c780 irq_restore+ 0x74/0x90 irq_restore+ 0x74/0x90 0xd8/0x3e0 +0xa4/0xe0 check_irq_ replay+ 0x54/0x70 queue+0x60/ 0xd0
LR = irq_work_ queue+0xa4/ 0xd0 events+ 0x108/0x130 kernel_ thread+ 0x5c/0xa4 140000000000002 /0 softirq=2284/2284 fqs=4838 task+0xe0/ 0x180 (unreliable) cpu_stacks+ 0xe4/0x150 callbacks+ 0x6b4/0x9b0 process_ times+0x58/ 0xa0 handle. isra.6+ 0x48/0xe0 timer+0x64/ 0xd0 run_queues+ 0x124/0x450 interrupt+ 0xec/0x2c0 interrupt+ 0x8c/0x290 +0xa0/0xe0 check_irq_ replay+ 0x54/0x70 irq_restore+ 0x74/0x90
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_