Linux – “rcu_preempt detected stalls on CPUs / tasks” message appears to continue

cpucpu-frequencydebuggingkernellinux-kernel

My board continues to display the message below.

The terminal does not have any input.

What is it with the following message, which I know? (T, g, c, q …)

What is the cause of this phenomenon?

How can I fix this phenomenon?

INFO: rcu_preempt detected stalls on CPUs/tasks: { 3} (detected by 0, t=3936547 jiffies, g=367023708, c=367023707, q=1511)
INFO: rcu_preempt detected stalls on CPUs/tasks: { 3} (detected by 2, t=3972552 jiffies, g=367023708, c=367023707, q=1511)
INFO: rcu_preempt detected stalls on CPUs/tasks: { 3} (detected by 1, t=4008557 jiffies, g=367023708, c=367023707, q=1511)
INFO: rcu_preempt detected stalls on CPUs/tasks: { 3} (detected by 1, t=4044562 jiffies, g=367023708, c=367023707, q=1511)
INFO: rcu_preempt detected stalls on CPUs/tasks: { 3} (detected by 2, t=4080567 jiffies, g=367023708, c=367023707, q=1511)
INFO: rcu_preempt detected stalls on CPUs/tasks: { 3} (detected by 0, t=4116572 jiffies, g=367023708, c=367023707, q=1511)
INFO: rcu_preempt detected stalls on CPUs/tasks: { 3} (detected by 1, t=4152577 jiffies, g=367023708, c=367023707, q=1511)
INFO: rcu_preempt detected stalls on CPUs/tasks: { 3} (detected by 0, t=4188582 jiffies, g=367023708, c=367023707, q=1511)
INFO: rcu_preempt detected stalls on CPUs/tasks: { 3} (detected by 1, t=4224587 jiffies, g=367023708, c=367023707, q=1511)
INFO: rcu_preempt detected stalls on CPUs/tasks: { 3} (detected by 1, t=4260592 jiffies, g=367023708, c=367023707, q=1511)
INFO: rcu_preempt detected stalls on CPUs/tasks: { 3} (detected by 1, t=4296597 jiffies, g=367023708, c=367023707, q=1511)
INFO: rcu_preempt detected stalls on CPUs/tasks: { 3} (detected by 2, t=4332602 jiffies, g=367023708, c=367023707, q=1511)
INFO: rcu_preempt detected stalls on CPUs/tasks: { 3} (detected by 2, t=4368607 jiffies, g=367023708, c=367023707, q=1511)

Best Answer

You probably have a real time application that is consuming all cpu (some bad implementation) and because of its realtime scheduling priority the system doesn't have enough resources available for other tasks.

I suggests that you remove realtime priority from your applications and check which one is consuming a lot of CPU and, after correcting the problem, puts it back to realtime priority

Related Question