rcu: Irq nesting is always 0 on rcu_enter_idle_common
Because tasks don't nest, the ->dyntick_nesting must always be zero upon entry to rcu_idle_enter_common(). Therefore, pass "0" rather than the counter itself. Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> Cc: Josh Triplett <josh@joshtriplett.org> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
This commit is contained in:
parent
b6fc602014
commit
facc4e1596
|
@ -350,12 +350,11 @@ static int rcu_implicit_offline_qs(struct rcu_data *rdp)
|
||||||
*/
|
*/
|
||||||
static void rcu_idle_enter_common(struct rcu_dynticks *rdtp, long long oldval)
|
static void rcu_idle_enter_common(struct rcu_dynticks *rdtp, long long oldval)
|
||||||
{
|
{
|
||||||
trace_rcu_dyntick("Start", oldval, rdtp->dynticks_nesting);
|
trace_rcu_dyntick("Start", oldval, 0);
|
||||||
if (!is_idle_task(current)) {
|
if (!is_idle_task(current)) {
|
||||||
struct task_struct *idle = idle_task(smp_processor_id());
|
struct task_struct *idle = idle_task(smp_processor_id());
|
||||||
|
|
||||||
trace_rcu_dyntick("Error on entry: not idle task",
|
trace_rcu_dyntick("Error on entry: not idle task", oldval, 0);
|
||||||
oldval, rdtp->dynticks_nesting);
|
|
||||||
ftrace_dump(DUMP_ALL);
|
ftrace_dump(DUMP_ALL);
|
||||||
WARN_ONCE(1, "Current pid: %d comm: %s / Idle pid: %d comm: %s",
|
WARN_ONCE(1, "Current pid: %d comm: %s / Idle pid: %d comm: %s",
|
||||||
current->pid, current->comm,
|
current->pid, current->comm,
|
||||||
|
|
Loading…
Reference in New Issue