diff mbox series

ath: Remove unneeded variable

Message ID 209fbe59213d89c3e7e3a5fe6030e19e@208suo.com
State New
Headers show
Series ath: Remove unneeded variable | expand

Commit Message

baomingtong001@208suo.com June 14, 2023, 3:09 a.m. UTC
Fix the following coccicheck warning:

drivers/net/wireless/ath/ath9k/gpio.c:501:5-8: Unneeded variable: "len".

Signed-off-by: Mingtong Bao <baomingtong001@208suo.com>
---
  drivers/net/wireless/ath/ath9k/gpio.c | 3 +--
  1 file changed, 1 insertion(+), 2 deletions(-)

  int ath9k_dump_btcoex(struct ath_softc *sc, u8 *buf, u32 size)

Comments

Julian Calaby June 14, 2023, 12:07 p.m. UTC | #1
Hi Mingtong,

On Wed, Jun 14, 2023 at 1:23 PM <baomingtong001@208suo.com> wrote:
>
> Fix the following coccicheck warning:
>
> drivers/net/wireless/ath/ath9k/gpio.c:501:5-8: Unneeded variable: "len".

Coccinelle / Coccicheck is unable to accurately detect unused
variables as it can only analyse the code as it is written and
doesn't, for example, expand macros. This produces false positives
like the one you're trying to fix in this patch.

> Signed-off-by: Mingtong Bao <baomingtong001@208suo.com>
> ---
>   drivers/net/wireless/ath/ath9k/gpio.c | 3 +--
>   1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/net/wireless/ath/ath9k/gpio.c
> b/drivers/net/wireless/ath/ath9k/gpio.c
> index b457e52dd365..f3d1bc02e633 100644
> --- a/drivers/net/wireless/ath/ath9k/gpio.c
> +++ b/drivers/net/wireless/ath/ath9k/gpio.c
> @@ -498,14 +498,13 @@ static int ath9k_dump_legacy_btcoex(struct
> ath_softc *sc, u8 *buf, u32 size)
>   {
>
>       struct ath_btcoex *btcoex = &sc->btcoex;
> -    u32 len = 0;
>
>       ATH_DUMP_BTCOEX("Stomp Type", btcoex->bt_stomp_type);

ATH_DUMP_BTCOEX() is a macro that relies on a bunch of local variables
being defined, one of which is "len". If you'd compiled this code, you
would have spotted this problem immediately.

A "correct" solution to the "problem" here might be to add the local
variables to the macro parameters or move the definition of the macro
closer to where it's used so it's more obvious that some "magic" is
going on here.

As others have said, you need to fully understand what code is doing
before producing these sorts of cleanups, otherwise you'll produce
incorrect patches like this one.

Thanks,
diff mbox series

Patch

diff --git a/drivers/net/wireless/ath/ath9k/gpio.c 
b/drivers/net/wireless/ath/ath9k/gpio.c
index b457e52dd365..f3d1bc02e633 100644
--- a/drivers/net/wireless/ath/ath9k/gpio.c
+++ b/drivers/net/wireless/ath/ath9k/gpio.c
@@ -498,14 +498,13 @@  static int ath9k_dump_legacy_btcoex(struct 
ath_softc *sc, u8 *buf, u32 size)
  {

      struct ath_btcoex *btcoex = &sc->btcoex;
-    u32 len = 0;

      ATH_DUMP_BTCOEX("Stomp Type", btcoex->bt_stomp_type);
      ATH_DUMP_BTCOEX("BTCoex Period (msec)", btcoex->btcoex_period);
      ATH_DUMP_BTCOEX("Duty Cycle", btcoex->duty_cycle);
      ATH_DUMP_BTCOEX("BT Wait time", btcoex->bt_wait_time);

-    return len;
+    return 0;
  }