[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20190807234125.GK28441@linux.ibm.com>
Date: Wed, 7 Aug 2019 16:41:25 -0700
From: "Paul E. McKenney" <paulmck@...ux.ibm.com>
To: Ethan Hansen <1ethanhansen@...il.com>
Cc: rcu@...r.kernel.org, linux-kernel@...r.kernel.org,
dave@...olabs.net, josh@...htriplett.org, rostedt@...dmis.org,
mathieu.desnoyers@...icios.com, jiangshanlai@...il.com,
joel@...lfernandes.org
Subject: Re: [PATCH tip/core/rcu 1/1] rcu: Remove unused variable
rcu_perf_writer_state
On Wed, Aug 07, 2019 at 04:26:55PM -0700, Ethan Hansen wrote:
> The variable rcu_perf_writer_state is declared and initialized,
> but is never actually referenced. Remove it to clean code.
>
> Signed-off-by: Ethan Hansen <1ethanhansen@...il.com>
Good eyes, thank you! One question below.
Thanx, Paul
> ---
> kernel/rcu/rcuperf.c | 8 --------
> 1 file changed, 8 deletions(-)
>
> diff --git a/kernel/rcu/rcuperf.c b/kernel/rcu/rcuperf.c
> index 5a879d0..ff02936 100644
> --- a/kernel/rcu/rcuperf.c
> +++ b/kernel/rcu/rcuperf.c
> @@ -109,7 +109,6 @@
> static unsigned long b_rcu_perf_writer_finished;
> static DEFINE_PER_CPU(atomic_t, n_async_inflight);
>
> -static int rcu_perf_writer_state;
> #define RTWS_INIT 0
> #define RTWS_ASYNC 1
> #define RTWS_BARRIER 2
Does removing this variable also mean that the RTWS_* C preprocessor
macros are now unused?
> @@ -404,25 +403,20 @@ static void rcu_perf_async_cb(struct rcu_head *rhp)
> if (!rhp)
> rhp = kmalloc(sizeof(*rhp), GFP_KERNEL);
> if (rhp && atomic_read(this_cpu_ptr(&n_async_inflight)) < gp_async_max) {
> - rcu_perf_writer_state = RTWS_ASYNC;
> atomic_inc(this_cpu_ptr(&n_async_inflight));
> cur_ops->async(rhp, rcu_perf_async_cb);
> rhp = NULL;
> } else if (!kthread_should_stop()) {
> - rcu_perf_writer_state = RTWS_BARRIER;
> cur_ops->gp_barrier();
> goto retry;
> } else {
> kfree(rhp); /* Because we are stopping. */
> }
> } else if (gp_exp) {
> - rcu_perf_writer_state = RTWS_EXP_SYNC;
> cur_ops->exp_sync();
> } else {
> - rcu_perf_writer_state = RTWS_SYNC;
> cur_ops->sync();
> }
> - rcu_perf_writer_state = RTWS_IDLE;
> t = ktime_get_mono_fast_ns();
> *wdp = t - *wdp;
> i_max = i;
> @@ -463,10 +457,8 @@ static void rcu_perf_async_cb(struct rcu_head *rhp)
> rcu_perf_wait_shutdown();
> } while (!torture_must_stop());
> if (gp_async) {
> - rcu_perf_writer_state = RTWS_BARRIER;
> cur_ops->gp_barrier();
> }
> - rcu_perf_writer_state = RTWS_STOPPING;
> writer_n_durations[me] = i_max;
> torture_kthread_stopping("rcu_perf_writer");
> return 0;
> --
> 1.8.3.1
>
Powered by blists - more mailing lists