mirror of
https://github.com/torvalds/linux.git
synced 2026-09-22 12:44:03 +02:00
rcutorture: Announce declining to forward-progress test
Currently, rcu_torture_fwd_prog_cr() announces function entry, but silently exits if rcu_fwd_emergency_stop is set or if there is no ->call() function available. This could cause confusion, leading people to believe that rcu_torture_fwd_prog_cr() is on the job when it is not. This commit therefore also announces the early exits from this function. Signed-off-by: Paul E. McKenney <paulmck@kernel.org>
This commit is contained in:
parent
aaf43c458c
commit
6c22d64011
|
|
@ -3623,13 +3623,17 @@ static void rcu_torture_fwd_prog_cr(struct rcu_fwd *rfp)
|
|||
unsigned long stopat;
|
||||
unsigned long stoppedat;
|
||||
|
||||
pr_alert("%s: Starting forward-progress test %d\n", __func__, rfp->rcu_fwd_id);
|
||||
if (READ_ONCE(rcu_fwd_emergency_stop))
|
||||
if (READ_ONCE(rcu_fwd_emergency_stop)) {
|
||||
pr_alert("%s: Emergency stop, so no forward-progress test %d\n", __func__, rfp->rcu_fwd_id);
|
||||
return; /* Get out of the way quickly, no GP wait! */
|
||||
if (!cur_ops->call)
|
||||
}
|
||||
if (!cur_ops->call) {
|
||||
pr_alert("%s: No ->call(), so no forward-progress test %d\n", __func__, rfp->rcu_fwd_id);
|
||||
return; /* Can't do call_rcu() fwd prog without ->call. */
|
||||
}
|
||||
|
||||
/* Loop continuously posting RCU callbacks. */
|
||||
pr_alert("%s: Starting forward-progress test %d\n", __func__, rfp->rcu_fwd_id);
|
||||
atomic_inc(&rcu_fwd_cb_nodelay);
|
||||
cur_ops->sync(); /* Later readers see above write. */
|
||||
WRITE_ONCE(rfp->rcu_fwd_startat, jiffies);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user