diff mbox series

[-next] net: stmmac: platform: remove useless if/else

Message ID 1603938832-53705-1-git-send-email-zou_wei@huawei.com
State New
Headers show
Series [-next] net: stmmac: platform: remove useless if/else | expand

Commit Message

Zou Wei Oct. 29, 2020, 2:33 a.m. UTC
Fix the following coccinelle report:

./drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c:233:6-8:
WARNING: possible condition with no effect (if == else)

Both branches are the same, so remove the else if/else altogether.

Reported-by: Hulk Robot <hulkci@huawei.com>
Signed-off-by: Zou Wei <zou_wei@huawei.com>
---
 drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c | 2 --
 1 file changed, 2 deletions(-)

Comments

Andrew Lunn Oct. 29, 2020, 12:34 p.m. UTC | #1
On Thu, Oct 29, 2020 at 10:33:52AM +0800, Zou Wei wrote:
> Fix the following coccinelle report:
> 
> ./drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c:233:6-8:
> WARNING: possible condition with no effect (if == else)
> 
> Both branches are the same, so remove the else if/else altogether.
> 
> Reported-by: Hulk Robot <hulkci@huawei.com>
> Signed-off-by: Zou Wei <zou_wei@huawei.com>
> ---
>  drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
> index af34a4c..f6c69d0 100644
> --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
> +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
> @@ -230,8 +230,6 @@ static int stmmac_mtl_setup(struct platform_device *pdev,
>  		plat->tx_sched_algorithm = MTL_TX_ALGORITHM_WFQ;
>  	else if (of_property_read_bool(tx_node, "snps,tx-sched-dwrr"))
>  		plat->tx_sched_algorithm = MTL_TX_ALGORITHM_DWRR;
> -	else if (of_property_read_bool(tx_node, "snps,tx-sched-sp"))
> -		plat->tx_sched_algorithm = MTL_TX_ALGORITHM_SP;
>  	else
>  		plat->tx_sched_algorithm = MTL_TX_ALGORITHM_SP;

I actually prefer the original code. Code is also documentation. It
documents the fact, if "snps,tx-sched-sp" is in device tree, we use
MTL_TX_ALGORITHM_SP, but otherwise we default to MTL_TX_ALGORITHM_SP.

As with my suggestion for forcedeth, i would move the default setting
to before the whole if/else if/else block to document it is the
default.

Or just consider this a false positive and leave it alone. I can see
value in the coccinelle script, but it is going to have a lot of false
positive cases, so i'm not sure there is value in working around them
all.

	Andrew
Jakub Kicinski Oct. 29, 2020, 11:01 p.m. UTC | #2
On Thu, 29 Oct 2020 13:34:45 +0100 Andrew Lunn wrote:
> On Thu, Oct 29, 2020 at 10:33:52AM +0800, Zou Wei wrote:

> > Fix the following coccinelle report:

> > 

> > ./drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c:233:6-8:

> > WARNING: possible condition with no effect (if == else)

> > 

> > Both branches are the same, so remove the else if/else altogether.

> > 

> > Reported-by: Hulk Robot <hulkci@huawei.com>

> > Signed-off-by: Zou Wei <zou_wei@huawei.com>

> > ---

> >  drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c | 2 --

> >  1 file changed, 2 deletions(-)

> > 

> > diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c

> > index af34a4c..f6c69d0 100644

> > --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c

> > +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c

> > @@ -230,8 +230,6 @@ static int stmmac_mtl_setup(struct platform_device *pdev,

> >  		plat->tx_sched_algorithm = MTL_TX_ALGORITHM_WFQ;

> >  	else if (of_property_read_bool(tx_node, "snps,tx-sched-dwrr"))

> >  		plat->tx_sched_algorithm = MTL_TX_ALGORITHM_DWRR;

> > -	else if (of_property_read_bool(tx_node, "snps,tx-sched-sp"))

> > -		plat->tx_sched_algorithm = MTL_TX_ALGORITHM_SP;

> >  	else

> >  		plat->tx_sched_algorithm = MTL_TX_ALGORITHM_SP;  

> 

> I actually prefer the original code. Code is also documentation. It

> documents the fact, if "snps,tx-sched-sp" is in device tree, we use

> MTL_TX_ALGORITHM_SP, but otherwise we default to MTL_TX_ALGORITHM_SP.

> 

> As with my suggestion for forcedeth, i would move the default setting

> to before the whole if/else if/else block to document it is the

> default.

> 

> Or just consider this a false positive and leave it alone. I can see

> value in the coccinelle script, but it is going to have a lot of false

> positive cases, so i'm not sure there is value in working around them

> all.


Annoyingly this is not the first time this exact patch is submitted :/

I think your forcedeth suggestion is a nice compromise.
diff mbox series

Patch

diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
index af34a4c..f6c69d0 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_platform.c
@@ -230,8 +230,6 @@  static int stmmac_mtl_setup(struct platform_device *pdev,
 		plat->tx_sched_algorithm = MTL_TX_ALGORITHM_WFQ;
 	else if (of_property_read_bool(tx_node, "snps,tx-sched-dwrr"))
 		plat->tx_sched_algorithm = MTL_TX_ALGORITHM_DWRR;
-	else if (of_property_read_bool(tx_node, "snps,tx-sched-sp"))
-		plat->tx_sched_algorithm = MTL_TX_ALGORITHM_SP;
 	else
 		plat->tx_sched_algorithm = MTL_TX_ALGORITHM_SP;