Re: [PATCH] staging: lustre: fixed shadowed variable in socklnd_cb.c

From: Dilger, Andreas
Date: Thu Nov 03 2016 - 18:12:32 EST


On Nov 3, 2016, at 15:54, Andrew Kanner <andrew.kanner@xxxxxxxxx> wrote:
>
> Changed variable 'tx' name in local scope
> Fixed: sparse warning:
> socklnd_cb.c:2476:41: warning: symbol 'tx' shadows an earlier one
> socklnd_cb.c:2435:25: originally declared here

Looking at this more closely (or from a greater distance, hard to say),
the outer-scope "tx" is used only after this inner-scope "tx", so in
fact there is no benefit to having the inner-scope declaration at all.

Removing it may save a stack variable (depending on how the compiler
optimizes), and shouldn't affect functionality.

Cheers, Andreas

> Signed-off-by: Andrew Kanner <andrew.kanner@xxxxxxxxx>
> ---
> drivers/staging/lustre/lnet/klnds/socklnd/socklnd_cb.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/staging/lustre/lnet/klnds/socklnd/socklnd_cb.c b/drivers/staging/lustre/lnet/klnds/socklnd/socklnd_cb.c
> index c1c6f60..03fe4e5 100644
> --- a/drivers/staging/lustre/lnet/klnds/socklnd/socklnd_cb.c
> +++ b/drivers/staging/lustre/lnet/klnds/socklnd/socklnd_cb.c
> @@ -2473,11 +2473,11 @@ ksocknal_check_peer_timeouts(int idx)
> * holding only shared lock
> */
> if (!list_empty(&peer->ksnp_tx_queue)) {
> - struct ksock_tx *tx = list_entry(peer->ksnp_tx_queue.next,
> + struct ksock_tx *_tx = list_entry(peer->ksnp_tx_queue.next,
> struct ksock_tx, tx_list);
>
> if (cfs_time_aftereq(cfs_time_current(),
> - tx->tx_deadline)) {
> + _tx->tx_deadline)) {
> ksocknal_peer_addref(peer);
> read_unlock(&ksocknal_data.ksnd_global_lock);
>
> --
> 2.1.4
>