内核:INFO:Allwinner H3、Ubuntu 16.04.6 LTS 4.14.52 上的 CPU 上的 rcu_sched 自我检测停顿

内核:INFO:Allwinner H3、Ubuntu 16.04.6 LTS 4.14.52 上的 CPU 上的 rcu_sched 自我检测停顿

我有一块 NanoPi Duo2 开发板,上面装有 Allwinner H3 和 Ubuntu 16.04.6 LTS 4.14.52。一段时间后(从几小时到几天)它卡住了:可以 ping 通,甚至可以通过 SSH 连接,但输入密码后会冻结。是否可以确定导致此问题的原因?也许有解决此问题的方法 - 例如自动重启?

Jul 11 21:27:41 Mydev1 kernel: INFO: rcu_sched self-detected stall on CPU
Jul 11 21:27:41 Mydev1 kernel: INFO: rcu_sched self-detected stall on CPU
Jul 11 21:27:41 Mydev1 kernel: INFO: rcu_sched self-detected stall on CPU
Jul 11 21:27:41 Mydev1 kernel:         0-...: (1 GPs behind) idle=57a/140000000000001/0 softirq=143371/143372 fqs=0 
Jul 11 21:27:41 Mydev1 kernel:         1-...: (1 ticks this GP) idle=912/140000000000001/0 softirq=198980/198980 fqs=0 
Jul 11 21:27:41 Mydev1 kernel:         
Jul 11 21:27:41 Mydev1 kernel:         
Jul 11 21:27:41 Mydev1 kernel:  (t=68718 jiffies g=88366 c=88365 q=19)
Jul 11 21:27:41 Mydev1 kernel:  (t=68718 jiffies g=88366 c=88365 q=19)
Jul 11 21:27:41 Mydev1 kernel: rcu_sched kthread starved for 68718 jiffies! g88366 c88365 f0x0 RCU_GP_WAIT_FQS(3) ->state=0x402 ->cpu=1
Jul 11 21:27:41 Mydev1 kernel: rcu_sched kthread starved for 68718 jiffies! g88366 c88365 f0x0 RCU_GP_WAIT_FQS(3) ->state=0x402 ->cpu=1
Jul 11 21:27:42 Mydev1 kernel: rcu_sched       I
Jul 11 21:27:42 Mydev1 kernel: rcu_sched       I
Jul 11 21:27:42 Mydev1 kernel:     0     8      2 0x00000000
Jul 11 21:27:42 Mydev1 kernel:     0     8      2 0x00000000
Jul 11 21:27:42 Mydev1 kernel: [<c09fe640>] (__schedule) from [<c09feae4>] (schedule+0x44/0x9c)
Jul 11 21:27:42 Mydev1 kernel: [<c09fe640>] (__schedule) from [<c09feae4>] (schedule+0x44/0x9c)
Jul 11 21:27:42 Mydev1 kernel: [<c09feae4>] (schedule) from [<c0a02088>] (schedule_timeout+0x148/0x258)
Jul 11 21:27:42 Mydev1 kernel: [<c09feae4>] (schedule) from [<c0a02088>] (schedule_timeout+0x148/0x258)
Jul 11 21:27:42 Mydev1 kernel: [<c0a02088>] (schedule_timeout) from [<c0291a5c>] (rcu_gp_kthread+0x4a4/0x928)
Jul 11 21:27:42 Mydev1 kernel: [<c0a02088>] (schedule_timeout) from [<c0291a5c>] (rcu_gp_kthread+0x4a4/0x928)
Jul 11 21:27:42 Mydev1 kernel: [<c0291a5c>] (rcu_gp_kthread) from [<c025ca30>] (kthread+0x128/0x158)
Jul 11 21:27:42 Mydev1 kernel: [<c0291a5c>] (rcu_gp_kthread) from [<c025ca30>] (kthread+0x128/0x158)
Jul 11 21:27:42 Mydev1 kernel: [<c025ca30>] (kthread) from [<c0222018>] (ret_from_fork+0x14/0x3c)
Jul 11 21:27:42 Mydev1 kernel: [<c025ca30>] (kthread) from [<c0222018>] (ret_from_fork+0x14/0x3c)
Jul 11 21:27:42 Mydev1 kernel: NMI backtrace for cpu 0
Jul 11 21:27:42 Mydev1 kernel: CPU: 0 PID: 10 Comm: migration/0 Tainted: G           O    4.14.52 #110
Jul 11 21:27:42 Mydev1 kernel: Hardware name: sun8i
Jul 11 21:27:42 Mydev1 kernel: [<c02289a8>] (unwind_backtrace) from [<c02255b4>] (show_stack+0x10/0x14)
Jul 11 21:27:42 Mydev1 kernel: [<c02255b4>] (show_stack) from [<c09ea23c>] (dump_stack+0x94/0xa8)
Jul 11 21:27:42 Mydev1 kernel: [<c09ea23c>] (dump_stack) from [<c09efb10>] (nmi_cpu_backtrace+0x11c/0x120)
Jul 11 21:27:42 Mydev1 kernel: [<c09efb10>] (nmi_cpu_backtrace) from [<c09efbec>] (nmi_trigger_cpumask_backtrace+0xd8/0x118)
Jul 11 21:27:42 Mydev1 kernel: [<c09efbec>] (nmi_trigger_cpumask_backtrace) from [<c0293ebc>] (rcu_dump_cpu_stacks+0x98/0xc8)
Jul 11 21:27:42 Mydev1 kernel: [<c0293ebc>] (rcu_dump_cpu_stacks) from [<c02935d0>] (rcu_check_callbacks+0x6bc/0x844)
Jul 11 21:27:42 Mydev1 kernel: [<c02935d0>] (rcu_check_callbacks) from [<c0296f28>] (update_process_times+0x30/0x5c)
Jul 11 21:27:42 Mydev1 kernel: [<c0296f28>] (update_process_times) from [<c02a6f68>] (tick_sched_timer+0x40/0x9c)
Jul 11 21:27:42 Mydev1 kernel: [<c02a6f68>] (tick_sched_timer) from [<c0297d10>] (__hrtimer_run_queues+0x110/0x184)
Jul 11 21:27:42 Mydev1 kernel: [<c0297d10>] (__hrtimer_run_queues) from [<c0297f4c>] (hrtimer_interrupt+0xb8/0x20c)
Jul 11 21:27:42 Mydev1 kernel: [<c0297f4c>] (hrtimer_interrupt) from [<c07a3794>] (arch_timer_handler_phys+0x28/0x30)
Jul 11 21:27:42 Mydev1 kernel: [<c07a3794>] (arch_timer_handler_phys) from [<c02887b8>] (handle_percpu_devid_irq+0x74/0x134)
Jul 11 21:27:43 Mydev1 kernel: [<c02887b8>] (handle_percpu_devid_irq) from [<c0283ac0>] (generic_handle_irq+0x24/0x34)
Jul 11 21:27:43 Mydev1 kernel: [<c0283ac0>] (generic_handle_irq) from [<c0283fdc>] (__handle_domain_irq+0x5c/0xb4)
Jul 11 21:27:43 Mydev1 kernel: [<c0283fdc>] (__handle_domain_irq) from [<c0201528>] (gic_handle_irq+0x3c/0x78)
Jul 11 21:27:43 Mydev1 kernel: [<c0201528>] (gic_handle_irq) from [<c0226078>] (__irq_svc+0x58/0x74)
Jul 11 21:27:43 Mydev1 kernel: Exception stack(0xdb077ee0 to 0xdb077f28)
Jul 11 21:27:43 Mydev1 kernel: 7ee0: 00000000 00000008 00000000 00000001 c9e47ef4 00000001 c9e47ee0 00000001
Jul 11 21:27:43 Mydev1 kernel: 7f00: a0070013 c02c0e90 c9e47ea0 00000000 00000000 db077f30 c02c0f98 c02c0ee8
Jul 11 21:27:43 Mydev1 kernel: 7f20: 60070013 ffffffff
Jul 11 21:27:43 Mydev1 kernel: [<c0226078>] (__irq_svc) from [<c02c0ee8>] (multi_cpu_stop+0x58/0x118)
Jul 11 21:27:43 Mydev1 kernel: [<c02c0ee8>] (multi_cpu_stop) from [<c02c1178>] (cpu_stopper_thread+0xa4/0x11c)
Jul 11 21:27:43 Mydev1 kernel: [<c02c1178>] (cpu_stopper_thread) from [<c02603c0>] (smpboot_thread_fn+0x114/0x194)
Jul 11 21:27:43 Mydev1 kernel: [<c02603c0>] (smpboot_thread_fn) from [<c025ca30>] (kthread+0x128/0x158)
Jul 11 21:27:43 Mydev1 kernel: [<c025ca30>] (kthread) from [<c0222018>] (ret_from_fork+0x14/0x3c)
Jul 11 21:27:43 Mydev1 kernel: Sending NMI from CPU 0 to CPUs 1:
Jul 11 21:27:43 Mydev1 kernel:         2-...: (1 GPs behind) idle=722/140000000000001/0 softirq=164781/164781 fqs=0 
Jul 11 21:27:43 Mydev1 kernel:          (t=68718 jiffies g=88366 c=88365 q=19)
Jul 11 21:27:43 Mydev1 kernel: rcu_sched kthread starved for 68718 jiffies! g88366 c88365 f0x0 RCU_GP_WAIT_FQS(3) ->state=0x0 ->cpu=1
Jul 11 21:27:43 Mydev1 kernel: rcu_sched       R  running task        0     8      2 0x00000000
Jul 11 21:27:43 Mydev1 kernel: [<c09fe640>] (__schedule) from [<c09feae4>] (schedule+0x44/0x9c)
Jul 11 21:27:43 Mydev1 kernel: [<c09feae4>] (schedule) from [<c0a02088>] (schedule_timeout+0x148/0x258)
Jul 11 21:27:43 Mydev1 kernel: [<c0a02088>] (schedule_timeout) from [<c0291a5c>] (rcu_gp_kthread+0x4a4/0x928)
Jul 11 21:27:43 Mydev1 kernel: [<c0291a5c>] (rcu_gp_kthread) from [<c025ca30>] (kthread+0x128/0x158)
Jul 11 21:27:43 Mydev1 kernel: [<c025ca30>] (kthread) from [<c0222018>] (ret_from_fork+0x14/0x3c)
Jul 11 21:27:43 Mydev1 kernel: Sending NMI from CPU 0 to CPUs 2:
Jul 11 21:27:43 Mydev1 kernel: Sending NMI from CPU 0 to CPUs 3:
Jul 11 21:27:43 Mydev1 kernel: Sending NMI from CPU 1 to CPUs 0:
Jul 11 21:27:43 Mydev1 kernel: NMI backtrace for cpu 1
Jul 11 21:27:43 Mydev1 kernel: CPU: 1 PID: 13 Comm: migration/1 Tainted: G           O    4.14.52 #110
Jul 11 21:27:44 Mydev1 kernel: Hardware name: sun8i
Jul 11 21:27:44 Mydev1 kernel: [<c02289a8>] (unwind_backtrace) from [<c02255b4>] (show_stack+0x10/0x14)
Jul 11 21:27:44 Mydev1 kernel: [<c02255b4>] (show_stack) from [<c09ea23c>] (dump_stack+0x94/0xa8)
Jul 11 21:27:44 Mydev1 kernel: [<c09ea23c>] (dump_stack) from [<c09efb10>] (nmi_cpu_backtrace+0x11c/0x120)
Jul 11 21:27:44 Mydev1 kernel: [<c09efb10>] (nmi_cpu_backtrace) from [<c09efbec>] (nmi_trigger_cpumask_backtrace+0xd8/0x118)
Jul 11 21:27:44 Mydev1 kernel: [<c09efbec>] (nmi_trigger_cpumask_backtrace) from [<c0293ebc>] (rcu_dump_cpu_stacks+0x98/0xc8)
Jul 11 21:27:44 Mydev1 kernel: [<c0293ebc>] (rcu_dump_cpu_stacks) from [<c02935d0>] (rcu_check_callbacks+0x6bc/0x844)
Jul 11 21:27:44 Mydev1 kernel: [<c02935d0>] (rcu_check_callbacks) from [<c0296f28>] (update_process_times+0x30/0x5c)
Jul 11 21:27:44 Mydev1 kernel: [<c0296f28>] (update_process_times) from [<c02a6f68>] (tick_sched_timer+0x40/0x9c)
Jul 11 21:27:44 Mydev1 kernel: [<c02a6f68>] (tick_sched_timer) from [<c0297d10>] (__hrtimer_run_queues+0x110/0x184)
Jul 11 21:27:44 Mydev1 kernel: [<c0297d10>] (__hrtimer_run_queues) from [<c0297f4c>] (hrtimer_interrupt+0xb8/0x20c)
Jul 11 21:27:44 Mydev1 kernel: [<c0297f4c>] (hrtimer_interrupt) from [<c07a3794>] (arch_timer_handler_phys+0x28/0x30)
Jul 11 21:27:44 Mydev1 kernel: [<c07a3794>] (arch_timer_handler_phys) from [<c02887b8>] (handle_percpu_devid_irq+0x74/0x134)
Jul 11 21:27:44 Mydev1 kernel: [<c02887b8>] (handle_percpu_devid_irq) from [<c0283ac0>] (generic_handle_irq+0x24/0x34)
Jul 11 21:27:44 Mydev1 kernel: [<c0283ac0>] (generic_handle_irq) from [<c0283fdc>] (__handle_domain_irq+0x5c/0xb4)
Jul 11 21:27:44 Mydev1 kernel: [<c0283fdc>] (__handle_domain_irq) from [<c0201528>] (gic_handle_irq+0x3c/0x78)
Jul 11 21:27:44 Mydev1 kernel: [<c0201528>] (gic_handle_irq) from [<c0226078>] (__irq_svc+0x58/0x74)
Jul 11 21:27:44 Mydev1 kernel: Exception stack(0xdb083ee0 to 0xdb083f28)
Jul 11 21:27:44 Mydev1 kernel: 3ee0: 00000000 00000008 00000000 00000001 c9e47ef4 00000001 c9e47ee0 00000000
Jul 11 21:27:44 Mydev1 kernel: 3f00: a0000013 c02c0e90 c9e47ea0 00000000 00000000 db083f30 c02c0f98 c02c0ee4
Jul 11 21:27:44 Mydev1 kernel: 3f20: 60000013 ffffffff
Jul 11 21:27:44 Mydev1 kernel: [<c0226078>] (__irq_svc) from [<c02c0ee4>] (multi_cpu_stop+0x54/0x118)
Jul 11 21:27:44 Mydev1 kernel: [<c02c0ee4>] (multi_cpu_stop) from [<c02c1178>] (cpu_stopper_thread+0xa4/0x11c)
Jul 11 21:27:44 Mydev1 kernel: [<c02c1178>] (cpu_stopper_thread) from [<c02603c0>] (smpboot_thread_fn+0x114/0x194)
Jul 11 21:27:44 Mydev1 kernel: [<c02603c0>] (smpboot_thread_fn) from [<c025ca30>] (kthread+0x128/0x158)
Jul 11 21:27:44 Mydev1 kernel: [<c025ca30>] (kthread) from [<c0222018>] (ret_from_fork+0x14/0x3c)
Jul 11 21:27:44 Mydev1 kernel: Sending NMI from CPU 1 to CPUs 2:
Jul 11 21:27:44 Mydev1 kernel: Sending NMI from CPU 1 to CPUs 3:
Jul 11 21:27:44 Mydev1 kernel: Sending NMI from CPU 2 to CPUs 0:
Jul 11 21:27:45 Mydev1 kernel: Sending NMI from CPU 2 to CPUs 1:
Jul 11 21:27:45 Mydev1 kernel: NMI backtrace for cpu 2
Jul 11 21:27:45 Mydev1 kernel: CPU: 2 PID: 18 Comm: migration/2 Tainted: G           O    4.14.52 #110
Jul 11 21:27:45 Mydev1 kernel: Hardware name: sun8i
Jul 11 21:27:45 Mydev1 kernel: [<c02289a8>] (unwind_backtrace) from [<c02255b4>] (show_stack+0x10/0x14)
Jul 11 21:27:45 Mydev1 kernel: [<c02255b4>] (show_stack) from [<c09ea23c>] (dump_stack+0x94/0xa8)
Jul 11 21:27:45 Mydev1 kernel: [<c09ea23c>] (dump_stack) from [<c09efb10>] (nmi_cpu_backtrace+0x11c/0x120)
Jul 11 21:27:45 Mydev1 kernel: [<c09efb10>] (nmi_cpu_backtrace) from [<c09efbec>] (nmi_trigger_cpumask_backtrace+0xd8/0x118)
Jul 11 21:27:45 Mydev1 kernel: [<c09efbec>] (nmi_trigger_cpumask_backtrace) from [<c0293ebc>] (rcu_dump_cpu_stacks+0x98/0xc8)
Jul 11 21:27:45 Mydev1 kernel: [<c0293ebc>] (rcu_dump_cpu_stacks) from [<c02935d0>] (rcu_check_callbacks+0x6bc/0x844)
Jul 11 21:27:45 Mydev1 kernel: [<c02935d0>] (rcu_check_callbacks) from [<c0296f28>] (update_process_times+0x30/0x5c)
Jul 11 21:27:45 Mydev1 kernel: [<c0296f28>] (update_process_times) from [<c02a6f68>] (tick_sched_timer+0x40/0x9c)
Jul 11 21:27:45 Mydev1 kernel: [<c02a6f68>] (tick_sched_timer) from [<c0297d10>] (__hrtimer_run_queues+0x110/0x184)
Jul 11 21:27:45 Mydev1 kernel: [<c0297d10>] (__hrtimer_run_queues) from [<c0297f4c>] (hrtimer_interrupt+0xb8/0x20c)
Jul 11 21:27:45 Mydev1 kernel: [<c0297f4c>] (hrtimer_interrupt) from [<c07a3794>] (arch_timer_handler_phys+0x28/0x30)
Jul 11 21:27:45 Mydev1 kernel: [<c07a3794>] (arch_timer_handler_phys) from [<c02887b8>] (handle_percpu_devid_irq+0x74/0x134)
Jul 11 21:27:45 Mydev1 kernel: [<c02887b8>] (handle_percpu_devid_irq) from [<c0283ac0>] (generic_handle_irq+0x24/0x34)
Jul 11 21:27:45 Mydev1 kernel: [<c0283ac0>] (generic_handle_irq) from [<c0283fdc>] (__handle_domain_irq+0x5c/0xb4)
Jul 11 21:27:45 Mydev1 kernel: [<c0283fdc>] (__handle_domain_irq) from [<c0201528>] (gic_handle_irq+0x3c/0x78)
Jul 11 21:27:45 Mydev1 kernel: [<c0201528>] (gic_handle_irq) from [<c0226078>] (__irq_svc+0x58/0x74)
Jul 11 21:27:45 Mydev1 kernel: Exception stack(0xdb08dee0 to 0xdb08df28)
Jul 11 21:27:45 Mydev1 kernel: dee0: 00000000 00000008 00000000 00000001 c9e47ef4 00000001 c9e47ee0 00000000
Jul 11 21:27:45 Mydev1 kernel: df00: a0000013 c02c0e90 c9e47ea0 00000000 00000000 db08df30 c02c0f98 c02c0ee4
Jul 11 21:27:45 Mydev1 kernel: df20: 60000013 ffffffff
Jul 11 21:27:45 Mydev1 kernel: [<c0226078>] (__irq_svc) from [<c02c0ee4>] (multi_cpu_stop+0x54/0x118)
Jul 11 21:27:45 Mydev1 kernel: [<c02c0ee4>] (multi_cpu_stop) from [<c02c1178>] (cpu_stopper_thread+0xa4/0x11c)
Jul 11 21:27:45 Mydev1 kernel: [<c02c1178>] (cpu_stopper_thread) from [<c02603c0>] (smpboot_thread_fn+0x114/0x194)
Jul 11 21:27:46 Mydev1 kernel: [<c02603c0>] (smpboot_thread_fn) from [<c025ca30>] (kthread+0x128/0x158)
Jul 11 21:27:46 Mydev1 kernel: [<c025ca30>] (kthread) from [<c0222018>] (ret_from_fork+0x14/0x3c)
Jul 11 21:27:46 Mydev1 kernel: Sending NMI from CPU 2 to CPUs 3:
Jul 11 21:27:46 Mydev1 kernel: NMI backtrace for cpu 3
Jul 11 21:27:46 Mydev1 kernel: CPU: 3 PID: 0 Comm: swapper/3 Tainted: G           O    4.14.52 #110
Jul 11 21:27:46 Mydev1 kernel: Hardware name: sun8i
Jul 11 21:27:46 Mydev1 kernel: task: db054b00 task.stack: db07c000
Jul 11 21:27:46 Mydev1 kernel: PC is at tick_nohz_idle_exit+0x150/0x1b4
Jul 11 21:27:46 Mydev1 kernel: LR is at tick_nohz_idle_exit+0x14c/0x1b4
Jul 11 21:27:46 Mydev1 kernel: pc : [<c02a72b8>]    lr : [<c02a72b4>]    psr: 00070013
Jul 11 21:27:46 Mydev1 kernel: sp : db07dfa0  ip : c9f3c604  fp : 00000000
Jul 11 21:27:46 Mydev1 kernel: r10: 00000000  r9 : 0000052e  r8 : 139275c0
Jul 11 21:27:46 Mydev1 kernel: r7 : 00000000  r6 : 00000000  r5 : 00000000  r4 : dff94990
Jul 11 21:27:46 Mydev1 kernel: r3 : 00000000  r2 : dff8f2f8  r1 : 000004b7  r0 : 21a52f80
Jul 11 21:27:46 Mydev1 kernel: Flags: nzcv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment user
Jul 11 21:27:46 Mydev1 kernel: Control: 30c5387d  Table: 5a002000  DAC: d0020bc8
Jul 11 21:27:46 Mydev1 kernel: CPU: 3 PID: 0 Comm: swapper/3 Tainted: G           O    4.14.52 #110
Jul 11 21:27:46 Mydev1 kernel: Hardware name: sun8i
Jul 11 21:27:46 Mydev1 kernel: [<c02289a8>] (unwind_backtrace) from [<c02255b4>] (show_stack+0x10/0x14)
Jul 11 21:27:46 Mydev1 kernel: [<c02255b4>] (show_stack) from [<c09ea23c>] (dump_stack+0x94/0xa8)
Jul 11 21:27:46 Mydev1 kernel: [<c09ea23c>] (dump_stack) from [<c09efaac>] (nmi_cpu_backtrace+0xb8/0x120)
Jul 11 21:27:46 Mydev1 kernel: [<c09efaac>] (nmi_cpu_backtrace) from [<c02279d4>] (handle_IPI+0xac/0x190)
Jul 11 21:27:46 Mydev1 kernel: [<c02279d4>] (handle_IPI) from [<c0201560>] (gic_handle_irq+0x74/0x78)
Jul 11 21:27:46 Mydev1 kernel: [<c0201560>] (gic_handle_irq) from [<c0226078>] (__irq_svc+0x58/0x74)
Jul 11 21:27:46 Mydev1 kernel: Exception stack(0xdb07df50 to 0xdb07df98)
Jul 11 21:27:46 Mydev1 kernel: df40:                                     21a52f80 000004b7 dff8f2f8 00000000
Jul 11 21:27:46 Mydev1 kernel: df60: dff94990 00000000 00000000 00000000 139275c0 0000052e 00000000 00000000
Jul 11 21:27:46 Mydev1 kernel: df80: c9f3c604 db07dfa0 c02a72b4 c02a72b8 00070013 ffffffff
Jul 11 21:27:47 Mydev1 kernel: [<c0226078>] (__irq_svc) from [<c02a72b8>] (tick_nohz_idle_exit+0x150/0x1b4)
Jul 11 21:27:47 Mydev1 kernel: [<c02a72b8>] (tick_nohz_idle_exit) from [<c0278534>] (do_idle+0x144/0x1f8)
Jul 11 21:27:47 Mydev1 kernel: [<c0278534>] (do_idle) from [<c0278860>] (cpu_startup_entry+0x18/0x1c)
Jul 11 21:27:47 Mydev1 kernel: [<c0278860>] (cpu_startup_entry) from [<4020182c>] (0x4020182c)

答案1

讨论了相同的问题在 armbian 论坛上解决方法是将 CPU 设置为恒定速度(GOVERNOR=performance)和/或使用 cpufreq 限制其最大速度

相关内容