i.MX6 cpufreq : rcu_sched kthread starved
Jean-Michel Hautbois
jean-michel.hautbois at veo-labs.com
Thu Jun 11 01:48:31 PDT 2015
Hi,
I have a custom board, on which imx6q_cpufreq fails.
I am using 4.0.5 stable kernel with some custom parts, but nothing
modifies the DT in this specific part.
When activating anatop regulator and imx6q_cpufreq modules, after a
while, I get the following panic :
[ 388.902571] INFO: rcu_sched detected stalls on CPUs/tasks: { 1}
(detected by 0, t=2102 jiffies, g=7088, c=7087, q=34)
[ 388.913334] Task dump for CPU 1:
[ 388.916588] irq/298-IC PP R running 0 46 2 0x00000002
[ 388.923016] Backtrace:
[ 388.925541] [<8000cbc0>] (vfp_double_ftoui) from [<807fd2c8>]
(schedule+0x4c/0xa4)
[ 388.933151] [<807fd27c>] (schedule) from [<80080d68>] (irq_thread+0xdc/0x1e4)
[ 388.940307] r4:a609e000 r3:00000001
[ 388.943974] [<80080c8c>] (irq_thread) from [<8004d3a8>] (kthread+0xf0/0x110)
[ 388.951043] r10:00000000 r9:00000000 r8:00000000 r7:80080c8c
r6:a6ef1f40 r5:a6ef1f80
[ 388.959028] r4:00000000
[ 388.961622] [<8004d2b8>] (kthread) from [<8000fc98>]
(ret_from_fork+0x14/0x3c)
[ 388.968864] r7:00000000 r6:00000000 r5:8004d2b8 r4:a6ef1f80
[ 388.974652] rcu_sched kthread starved for 2093 jiffies!
[ 392.056054] NMI watchdog: BUG: soft lockup - CPU#0 stuck for 23s!
[kworker/0:1:25]
[ 392.063652] Modules linked in: imx6q_cpufreq anatop_regulator
snd_soc_adv76xx snd_soc_vbx3_fpga vbx3_fpga_vswitch smsc95xx usbnet
adv7604 pfuze100_regulator vbx3_fpga snd_soc_sgt
l5000 lmh0395 imx_ipu_scaler imx_ipu mx6_hdmi(C) mx6_camera(C)
mx6_display(C) snd_soc_vbx3sdi vbx3_sdi [last unloaded: imx_thermal]
[ 392.091501] irq event stamp: 1284
[ 392.094835] hardirqs last enabled at (1283): [<80802e6c>]
_raw_spin_unlock_irq+0x34/0x54
[ 392.103078] hardirqs last disabled at (1284): [<80802c18>]
_raw_spin_lock_irq+0x28/0xa0
[ 392.111135] softirqs last enabled at (714): [<806e5810>]
addrconf_verify_rtnl+0x1cc/0x4c0
[ 392.119459] softirqs last disabled at (708): [<806e5668>]
addrconf_verify_rtnl+0x24/0x4c0
[ 392.127701] CPU: 0 PID: 25 Comm: kworker/0:1 Tainted: G B C
4.0.5 #49
[ 392.135118] Hardware name: Freescale i.MX6 Quad/DualLite (Device Tree)
[ 392.141678] Workqueue: events od_dbs_timer
[ 392.145823] task: a6ec0ec0 ti: a6ed2000 task.ti: a6ed2000
[ 392.151256] PC is at generic_exec_single+0x118/0x20c
[ 392.156250] LR is at trace_hardirqs_on_caller+0x1c/0x200
[ 392.161589] pc : [<800a95c0>] lr : [<80070118>] psr: 200f0013
[ 392.161589] sp : a6ed3ae8 ip : 80e4f2c8 fp : a6ed3b1c
[ 392.173092] r10: a6ed3c64 r9 : a6ed3c5c r8 : 00000000
[ 392.178339] r7 : 80e4ea7c r6 : 00000001 r5 : a6ed3af0 r4 : 00000000
[ 392.184889] r3 : 00000003 r2 : 00000000 r1 : 80802e0c r0 : 80070310
[ 392.191441] Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM
Segment kernel
[ 392.198774] Control: 10c5387d Table: 3528004a DAC: 00000015
[ 392.204547] CPU: 0 PID: 25 Comm: kworker/0:1 Tainted: G B C
4.0.5 #49
[ 392.211963] Hardware name: Freescale i.MX6 Quad/DualLite (Device Tree)
[ 392.218516] Workqueue: events od_dbs_timer
[ 392.222653] Backtrace:
[ 392.225170] [<80013de0>] (dump_backtrace) from [<80014058>]
(show_stack+0x20/0x24)
[ 392.232760] r6:80e87c1c r5:00000000 r4:00000000 r3:00000000
[ 392.238571] [<80014038>] (show_stack) from [<807fabd0>]
(dump_stack+0x98/0xc8)
[ 392.245832] [<807fab38>] (dump_stack) from [<80010c74>] (show_regs+0x1c/0x20)
[ 392.252988] r6:00000017 r5:80e4eb70 r4:00000019 r3:00000000
[ 392.258800] [<80010c58>] (show_regs) from [<800b88bc>]
(watchdog_timer_fn+0x228/0x2b4)
[ 392.266767] [<800b8694>] (watchdog_timer_fn) from [<80093178>]
(__run_hrtimer+0xe4/0x2ac)
[ 392.274964] r10:800b8694 r9:80ecfcf4 r8:a7288388 r7:a72883e8
r6:80ecfce0 r5:0000005b
[ 392.282950] r4:a7288838
[ 392.285544] [<80093094>] (__run_hrtimer) from [<80093dd8>]
(hrtimer_interrupt+0x11c/0x2b4)
[ 392.293827] r10:00000001 r9:a7288388 r8:a7288388 r7:00000000
r6:a7288388 r5:0000005b
[ 392.301811] r4:47abd89a r3:00000000
[ 392.305478] [<80093cbc>] (hrtimer_interrupt) from [<80018604>]
(twd_handler+0x3c/0x50)
[ 392.313414] r10:80e87fac r9:80ecf95c r8:a6c8f000 r7:a728e540
r6:00000010 r5:a6c8df00
[ 392.321399] r4:00000001
[ 392.323995] [<800185c8>] (twd_handler) from [<80083820>]
(handle_percpu_devid_irq+0xd8/0x1ec)
[ 392.332539] r4:00006b22 r3:800185c8
[ 392.336200] [<80083748>] (handle_percpu_devid_irq) from
[<8007f130>] (generic_handle_irq+0x38/0x4c)
[ 392.345264] r10:a6ed3c64 r9:a6c38000 r8:00000001 r7:00000000
r6:80e4f578 r5:00000010
[ 392.353247] r4:00000010 r3:80083748
[ 392.356905] [<8007f0f8>] (generic_handle_irq) from [<8007f484>]
(__handle_domain_irq+0x74/0xf0)
[ 392.365623] r4:80e47e6c r3:00000135
[ 392.369281] [<8007f410>] (__handle_domain_irq) from [<8000880c>]
(gic_handle_irq+0x30/0x70)
[ 392.377651] r9:a6ed3c5c r8:00000000 r7:f4000100 r6:80e4f6f8
r5:a6ed3aa0 r4:f400010c
[ 392.385559] [<800087dc>] (gic_handle_irq) from [<80014c24>]
(__irq_svc+0x44/0x5c)
[ 392.393064] Exception stack(0xa6ed3aa0 to 0xa6ed3ae8)
[ 392.398147] 3aa0: 80070310 80802e0c 00000000 00000003 00000000
a6ed3af0 00000001 80e4ea7c
[ 392.406356] 3ac0: 00000000 a6ed3c5c a6ed3c64 a6ed3b1c 80e4f2c8
a6ed3ae8 80070118 800a95c0
[ 392.414554] 3ae0: 200f0013 ffffffff
[ 392.418062] r7:a6ed3ad4 r6:ffffffff r5:200f0013 r4:800a95c0
[ 392.423866] [<800a94a8>] (generic_exec_single) from [<800a9764>]
(smp_call_function_single+0xb0/0x104)
[ 392.433191] r6:a6ed3c64 r5:80018274 r4:00000001
[ 392.437921] [<800a96b4>] (smp_call_function_single) from
[<800a9bb0>] (smp_call_function_many+0x260/0x2cc)
[ 392.447592] r7:80e4ea7c r6:80e4ea7c r5:00000001 r4:80e4eb50
[ 392.453390] [<800a9950>] (smp_call_function_many) from [<800a9c6c>]
(smp_call_function+0x50/0x74)
[ 392.462281] r10:00000002 r9:a6ed3c5c r8:00000000 r7:a6ed3c64
r6:80018274 r5:a6ed3c5c
[ 392.470267] r4:a6ed3c64
[ 392.472856] [<800a9c1c>] (smp_call_function) from [<800a9cc8>]
(on_each_cpu+0x38/0x8c)
[ 392.480791] r4:00000000 r3:a6ed2000
[ 392.484452] [<800a9c90>] (on_each_cpu) from [<8001864c>]
(twd_rate_change+0x34/0x40)
[ 392.492213] r7:ffffffff r6:00000002 r5:a6ed3c5c r4:00000000
[ 392.498023] [<80018618>] (twd_rate_change) from [<8004e488>]
(notifier_call_chain+0x54/0x94)
[ 392.506502] [<8004e434>] (notifier_call_chain) from [<8004e9d4>]
(__srcu_notifier_call_chain+0x80/0xb4)
[ 392.515913] r8:ffffffff r7:00000000 r6:a6d49b10 r5:a6d49a58
r4:a6d49a04 r3:ffffffff
[ 392.523829] [<8004e954>] (__srcu_notifier_call_chain) from
[<8004ea30>] (srcu_notifier_call_chain+0x28/0x30)
[ 392.533676] r10:001312d0 r9:a5eaa880 r8:a6c3c900 r7:00000002
r6:a6c3e980 r5:80eb45c0
[ 392.541661] r4:a6d49a00
[ 392.544268] [<8004ea08>] (srcu_notifier_call_chain) from
[<805e627c>] (__clk_notify+0x7c/0x84)
[ 392.552916] [<805e6200>] (__clk_notify) from [<805e632c>]
(__clk_recalc_rates+0xa8/0xac)
[ 392.561025] r7:00000001 r6:179a7b00 r5:00000002 r4:a6c3e980
[ 392.566824] [<805e6284>] (__clk_recalc_rates) from [<805e6300>]
(__clk_recalc_rates+0x7c/0xac)
[ 392.575455] r6:2f34f600 r5:00000002 r4:a6c3e980 r3:00000000
[ 392.581254] [<805e6284>] (__clk_recalc_rates) from [<805e6300>]
(__clk_recalc_rates+0x7c/0xac)
[ 392.589885] r6:2f34f600 r5:00000002 r4:a6c87c80 r3:00000000
[ 392.595685] [<805e6284>] (__clk_recalc_rates) from [<805e867c>]
(clk_core_set_parent+0xf0/0x1ec)
[ 392.604489] r6:a6c3ed00 r5:00000000 r4:a6c3ed80 r3:00000001
[ 392.610285] [<805e858c>] (clk_core_set_parent) from [<805e87a4>]
(clk_set_parent+0x2c/0x30)
[ 392.618654] r8:000f32a0 r7:00000002 r6:3b5dc100 r5:000c15c0 r4:7f0cd1dc
[ 392.625529] [<805e8778>] (clk_set_parent) from [<7f0cc23c>]
(imx6q_set_target+0x1a0/0x4c8 [imx6q_cpufreq])
[ 392.635235] [<7f0cc09c>] (imx6q_set_target [imx6q_cpufreq]) from
[<805a8330>] (__cpufreq_driver_target+0x1e0/0x39c)
[ 392.645691] r10:a6ed3d98 r9:8172c1cc r8:00000002 r7:80edde20
r6:00000000 r5:a50b1f18
[ 392.653675] r4:a30d5a00
[ 392.656268] [<805a8150>] (__cpufreq_driver_target) from
[<805acb6c>] (od_check_cpu+0xb8/0xcc)
[ 392.664811] r10:a728af28 r9:0001b595 r8:a73f6f28 r7:80e4eb50
r6:00000001 r5:51eb851f
[ 392.672796] r4:a30d5a00
[ 392.675393] [<805acab4>] (od_check_cpu) from [<805ae9c0>]
(dbs_check_cpu+0x1a0/0x1f0)
[ 392.683242] r6:a31c6980 r5:0000005e r4:00000004 r3:805acab4
[ 392.689040] [<805ae820>] (dbs_check_cpu) from [<805ad040>]
(od_dbs_timer+0x84/0x148)
[ 392.696802] r10:00000000 r9:a50b1c00 r8:a728afb4 r7:a728af50
r6:a31c6980 r5:00000000
[ 392.704785] r4:a728af28
[ 392.707387] [<805acfbc>] (od_dbs_timer) from [<80047710>]
(process_one_work+0x1f8/0x56c)
[ 392.715499] r10:80ecf998 r9:80ecf998 r8:00000000 r7:a728ea00
r6:a728b340 r5:a6eab380
[ 392.723482] r4:a728af50 r3:a6ed2000
[ 392.727142] [<80047518>] (process_one_work) from [<8004840c>]
(worker_thread+0x40/0x4dc)
[ 392.735251] r10:a6eab380 r9:00000000 r8:80048464 r7:00000008
r6:a728b378 r5:a6eab398
[ 392.743235] r4:a728b340
[ 392.745823] [<800483cc>] (worker_thread) from [<8004d3a8>]
(kthread+0xf0/0x110)
[ 392.753152] r10:00000000 r9:00000000 r8:00000000 r7:800483cc
r6:a6eab380 r5:a6ead400
[ 392.761134] r4:00000000
[ 392.763727] [<8004d2b8>] (kthread) from [<8000fc98>]
(ret_from_fork+0x14/0x3c)
[ 392.770968] r7:00000000 r6:00000000 r5:8004d2b8 r4:a6ead400
[ 392.776757] Kernel panic - not syncing: softlockup: hung tasks
[ 394.017107] SMP: failed to stop secondary CPUs
[ 394.021590] ---[ end Kernel panic - not syncing: softlockup: hung tasks
I don't know if this could be related to the patch intergrated in 4.1-rc :
b923ff6af0d5a806a3996dac6d4393cd9792d0f4 ARM: imx6: convert GPC to
stacked domains
Thanks !
JM
More information about the linux-arm-kernel
mailing list