On Thu, Jun 18, 2020 at 04:29:55PM -0400, Joel Fernandes (Google) wrote: > Add 2 things to get visiblity around number of grace periods. > 1. Add number of GPs to End-state print. > 2. Just like End-state, add GP state to Start-state. > > This helps determine how many GPs elapsed during a run of rcutorture and > what the initial state was. > > Signed-off-by: Joel Fernandes (Google) <joel@xxxxxxxxxxxxxxxxx> And I queued this one with a reworked commit log, thank you! Thanx, Paul > --- > kernel/rcu/rcutorture.c | 13 +++++++++++-- > 1 file changed, 11 insertions(+), 2 deletions(-) > > diff --git a/kernel/rcu/rcutorture.c b/kernel/rcu/rcutorture.c > index 959a1f84d6904..c80725ddd9030 100644 > --- a/kernel/rcu/rcutorture.c > +++ b/kernel/rcu/rcutorture.c > @@ -186,6 +186,7 @@ static long n_barrier_successes; /* did rcu_barrier test succeed? */ > static unsigned long n_read_exits; > static struct list_head rcu_torture_removed; > static unsigned long shutdown_jiffies; > +static unsigned long start_gp_seq; > > static int rcu_torture_writer_state; > #define RTWS_FIXED_DELAY 0 > @@ -2508,8 +2509,9 @@ rcu_torture_cleanup(void) > > rcutorture_get_gp_data(cur_ops->ttype, &flags, &gp_seq); > srcutorture_get_gp_data(cur_ops->ttype, srcu_ctlp, &flags, &gp_seq); > - pr_alert("%s: End-test grace-period state: g%lu f%#x\n", > - cur_ops->name, gp_seq, flags); > + pr_alert("%s: End-test grace-period state: g%ld f%#x total-gps=%ld\n", > + cur_ops->name, (long)gp_seq, flags, > + rcutorture_seq_diff(gp_seq, start_gp_seq)); > torture_stop_kthread(rcu_torture_stats, stats_task); > torture_stop_kthread(rcu_torture_fqs, fqs_task); > if (rcu_torture_can_boost()) > @@ -2633,6 +2635,8 @@ rcu_torture_init(void) > long i; > int cpu; > int firsterr = 0; > + int flags = 0; > + unsigned long gp_seq = 0; > static struct rcu_torture_ops *torture_ops[] = { > &rcu_ops, &rcu_busted_ops, &srcu_ops, &srcud_ops, > &busted_srcud_ops, &tasks_ops, &tasks_rude_ops, > @@ -2675,6 +2679,11 @@ rcu_torture_init(void) > nrealreaders = 1; > } > rcu_torture_print_module_parms(cur_ops, "Start of test"); > + rcutorture_get_gp_data(cur_ops->ttype, &flags, &gp_seq); > + srcutorture_get_gp_data(cur_ops->ttype, srcu_ctlp, &flags, &gp_seq); > + start_gp_seq = gp_seq; > + pr_alert("%s: Start-test grace-period state: g%ld f%#x\n", > + cur_ops->name, (long)gp_seq, flags); > > /* Set up the freelist. */ > > -- > 2.27.0.111.gc72c7da667-goog >