[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20210609203711.GL4397@paulmck-ThinkPad-P17-Gen-1>
Date: Wed, 9 Jun 2021 13:37:11 -0700
From: "Paul E. McKenney" <paulmck@...nel.org>
To: "Jiangong.Han" <jiangong.han@...driver.com>
Cc: dave@...olabs.net, josh@...htriplett.org, rostedt@...dmis.org,
mathieu.desnoyers@...icios.com, jiangshanlai@...il.com,
joel@...lfernandes.org, linux-kernel@...r.kernel.org,
rcu@...r.kernel.org
Subject: Re: [PATCH] rcu-scale: change rcu-scale report.
On Sat, Jun 05, 2021 at 03:00:19PM +0800, Jiangong.Han wrote:
> The report on rcu-scale shows there are N grace periods, and gps
> are listed from 0 to N-1.
> This commit make writer_n_durations stores the counts of gps,
> change the listed gps index begin from 1 to N.
>
> From
> [ 8306.087880] rcu-scale: writer 0 gps: 133
> ......
> [ 8307.864630] rcu-scale: 0 writer-duration: 0 44003961
> [ 8307.935711] rcu-scale: 0 writer-duration: 1 32003582
> ......
> [ 8316.472860] rcu-scale: 0 writer-duration: 131 28004391
> [ 8316.538498] rcu-scale: 0 writer-duration: 132 27996410
>
> to
> [ 8306.087880] rcu-scale: writer 0 gps: 133
> ......
> [ 8307.864630] rcu-scale: 0 writer-duration: 1 44003961
> [ 8307.935711] rcu-scale: 0 writer-duration: 2 32003582
> ......
> [ 8316.472860] rcu-scale: 0 writer-duration: 132 28004391
> [ 8316.538498] rcu-scale: 0 writer-duration: 133 27996410
>
> Signed-off-by: Jiangong.Han <jiangong.han@...driver.com>
You lost me on this one. Why is this helpful? And how does the change
shown below actually result in the output shown above, given that
rcu_scale_cleanup() still starts j at zero?
Thanx, Paul
> ---
> kernel/rcu/rcuscale.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/kernel/rcu/rcuscale.c b/kernel/rcu/rcuscale.c
> index dca51fe9c73f..2cc34a22a506 100644
> --- a/kernel/rcu/rcuscale.c
> +++ b/kernel/rcu/rcuscale.c
> @@ -487,7 +487,7 @@ rcu_scale_writer(void *arg)
> if (gp_async) {
> cur_ops->gp_barrier();
> }
> - writer_n_durations[me] = i_max;
> + writer_n_durations[me] = i_max + 1;
> torture_kthread_stopping("rcu_scale_writer");
> return 0;
> }
> @@ -561,7 +561,7 @@ rcu_scale_cleanup(void)
> wdpp = writer_durations[i];
> if (!wdpp)
> continue;
> - for (j = 0; j <= writer_n_durations[i]; j++) {
> + for (j = 0; j < writer_n_durations[i]; j++) {
> wdp = &wdpp[j];
> pr_alert("%s%s %4d writer-duration: %5d %llu\n",
> scale_type, SCALE_FLAG,
> --
> 2.17.1
>
Powered by blists - more mailing lists