Lines Matching refs:CPU

1 Using RCU's CPU Stall Detector
3 The rcu_cpu_stall_suppress module parameter enables RCU's CPU stall
5 This module parameter enables CPU stall detection by default, but
14 issues an RCU CPU stall warning. This time period is normally
32 print out additional per-CPU diagnostic information, including
33 information on scheduling-clock ticks and RCU's idle-CPU tracking.
40 giving an RCU CPU stall warning message. (This is a cpp
45 The CPU stall detector tries to make the offending CPU print its
47 However, if the offending CPU does not detect its own stall in
49 some other CPU will complain. This delay is normally set to
65 For non-RCU-tasks flavors of RCU, when a CPU detects that it is stalling,
68 INFO: rcu_sched_state detected stall on CPU 5 (t=2500 jiffies)
70 This message indicates that CPU 5 detected that it was causing a stall,
72 followed by a stack dump of the offending CPU. On TREE_RCU kernel builds,
77 On the other hand, if the offending CPU fails to print out a stall-warning
78 message quickly enough, some other CPU will print a message similar to
83 This message indicates that CPU 2 detected that CPUs 3 and 5 were both
85 will normally be followed by stack dumps for each CPU. Please note that
107 INFO: rcu_preempt detected stall on CPU
114 INFO: rcu_preempt detected stall on CPU
118 The "(64628 ticks this GP)" indicates that this CPU has taken more
120 grace period. If the CPU was not yet aware of the current grace
122 indicates how many grace periods behind the CPU is.
126 dynticks counter, which will have an even-numbered value if the CPU is
133 handlers that the stalled CPU has executed. The number before the "/"
134 is the number that had executed since boot at the time that this CPU
137 example, if the CPU might have been in dyntick-idle mode for an extended
141 handlers are no longer able to execute on this CPU. This can happen if
142 the stalled CPU is spinning with interrupts are disabled, or, in -rt
146 low-order 16 bits (in hex) of the jiffies counter when this CPU last
160 Starving the grace-period kthreads of CPU time can of course result in
161 RCU CPU stall warnings even when all CPUs and tasks have passed through
174 What Causes RCU CPU Stall Warnings?
176 So your kernel printed an RCU CPU stall warning. The next question is
177 "What caused it?" The following problems can result in RCU CPU stall
180 o A CPU looping in an RCU read-side critical section.
182 o A CPU looping with interrupts disabled. This condition can
185 o A CPU looping with preemption disabled. This condition can
189 o A CPU looping with bottom halves disabled. This condition can
192 o For !CONFIG_PREEMPT kernels, a CPU looping anywhere in the
194 does not necessarily prevent RCU CPU stall warnings. Therefore,
204 o A CPU-bound real-time task in a CONFIG_PREEMPT kernel, which might
207 that low-priority task is not permitted to run on any other CPU,
213 o A CPU-bound real-time task in a CONFIG_PREEMPT_RT kernel that
223 interrupt on a CPU that is not in dyntick-idle mode. This
225 result in RCU CPU stall warnings for CONFIG_NO_HZ_COMMON=n kernels.
230 at least once in real life. A CPU failed in a running system,
232 This resulted in a series of RCU CPU stall warnings, eventually
233 leading the realization that the CPU had failed.
235 The RCU, RCU-sched, RCU-bh, and RCU-tasks implementations have CPU stall
236 warning. Note that SRCU does -not- have CPU stall warnings. Please note
237 that RCU only detects CPU stalls when there is a grace period in progress.
238 No grace period, no CPU stall warnings.