Re: [PATCH] net: adaptec: remove dead code in set_vlan_mode

From: Jakub Kicinski
Date: Fri Nov 20 2020 - 18:17:52 EST


On Fri, 20 Nov 2020 15:50:00 +0800 xiakaixu1987@xxxxxxxxx wrote:
> From: Kaixu Xia <kaixuxia@xxxxxxxxxxx>
>
> The body of the if statement can be executed only when the variable
> vlan_count equals to 32, so the condition of the while statement can
> not be true and the while statement is dead code. Remove it.
>
> Reported-by: Tosk Robot <tencent_os_robot@xxxxxxxxxxx>
> Signed-off-by: Kaixu Xia <kaixuxia@xxxxxxxxxxx>
> ---
> drivers/net/ethernet/adaptec/starfire.c | 9 ++-------
> 1 file changed, 2 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/net/ethernet/adaptec/starfire.c b/drivers/net/ethernet/adaptec/starfire.c
> index 555299737b51..ad27a9fa5e95 100644
> --- a/drivers/net/ethernet/adaptec/starfire.c
> +++ b/drivers/net/ethernet/adaptec/starfire.c
> @@ -1754,14 +1754,9 @@ static u32 set_vlan_mode(struct netdev_private *np)
> filter_addr += 16;
> vlan_count++;
> }
> - if (vlan_count == 32) {
> + if (vlan_count == 32)
> ret |= PerfectFilterVlan;
> - while (vlan_count < 32) {
> - writew(0, filter_addr);
> - filter_addr += 16;
> - vlan_count++;
> - }
> - }
> +
> return ret;
> }
> #endif /* VLAN_SUPPORT */

This got broken back in 2011:

commit 5da96be53a16a62488316810d0c7c5d58ce3ee4f
Author: Jiri Pirko <jpirko@xxxxxxxxxx>
Date: Wed Jul 20 04:54:31 2011 +0000

starfire: do vlan cleanup

- unify vlan and nonvlan rx path
- kill np->vlgrp and netdev_vlan_rx_register

Signed-off-by: Jiri Pirko <jpirko@xxxxxxxxxx>
Signed-off-by: David S. Miller <davem@xxxxxxxxxxxxx>

The comparison to 32 was on a different variable before that change.

Ion, do you think anyone is still using this driver?

Maybe it's time we put it in the history book (by which I mean remove
from the kernel).