|
@@ -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);
|