Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7129d383 authored by Paul E. McKenney's avatar Paul E. McKenney
Browse files

rcu: Trace only after NULL-pointer check



Fix a bonehead error introduced when adding event tracing to rcutorture.
Move the traces to follow the NULL-pointer checks.

Signed-off-by: default avatarPaul E. McKenney <paulmck@linux.vnet.ibm.com>
parent 236fefaf
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -1000,12 +1000,12 @@ static void rcu_torture_timer(unsigned long unused)
				  rcu_read_lock_bh_held() ||
				  rcu_read_lock_sched_held() ||
				  srcu_read_lock_held(&srcu_ctl));
	do_trace_rcu_torture_read(cur_ops->name, &p->rtort_rcu);
	if (p == NULL) {
		/* Leave because rcu_torture_writer is not yet underway */
		cur_ops->readunlock(idx);
		return;
	}
	do_trace_rcu_torture_read(cur_ops->name, &p->rtort_rcu);
	if (p->rtort_mbtest == 0)
		atomic_inc(&n_rcu_torture_mberror);
	spin_lock(&rand_lock);
@@ -1063,13 +1063,13 @@ rcu_torture_reader(void *arg)
					  rcu_read_lock_bh_held() ||
					  rcu_read_lock_sched_held() ||
					  srcu_read_lock_held(&srcu_ctl));
		do_trace_rcu_torture_read(cur_ops->name, &p->rtort_rcu);
		if (p == NULL) {
			/* Wait for rcu_torture_writer to get underway */
			cur_ops->readunlock(idx);
			schedule_timeout_interruptible(HZ);
			continue;
		}
		do_trace_rcu_torture_read(cur_ops->name, &p->rtort_rcu);
		if (p->rtort_mbtest == 0)
			atomic_inc(&n_rcu_torture_mberror);
		cur_ops->read_delay(&rand);