[net] net: atm: clean up a range check
diff mbox series

Message ID 20190503123948.GD29695@mwanda
State Accepted
Delegated to: David Miller
Headers show
Series
  • [net] net: atm: clean up a range check
Related show

Commit Message

Dan Carpenter May 3, 2019, 12:39 p.m. UTC
The code works fine but the problem is that check for negatives is a
no-op:

	if (arg < 0)
		i = 0;

The "i" value isn't used.  We immediately overwrite it with:

	i = array_index_nospec(arg, MAX_LEC_ITF);

The array_index_nospec() macro returns zero if "arg" is out of bounds so
this works, but the dead code is confusing and it doesn't look very
intentional.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
---
This applies to net, but it's just a clean up.

 net/atm/lec.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

Comments

David Miller May 5, 2019, 5:26 p.m. UTC | #1
From: Dan Carpenter <dan.carpenter@oracle.com>
Date: Fri, 3 May 2019 15:39:48 +0300

> The code works fine but the problem is that check for negatives is a
> no-op:
> 
> 	if (arg < 0)
> 		i = 0;
> 
> The "i" value isn't used.  We immediately overwrite it with:
> 
> 	i = array_index_nospec(arg, MAX_LEC_ITF);
> 
> The array_index_nospec() macro returns zero if "arg" is out of bounds so
> this works, but the dead code is confusing and it doesn't look very
> intentional.
> 
> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
> ---
> This applies to net, but it's just a clean up.

I'm applying this to net-next, thanks Dan.

Patch
diff mbox series

diff --git a/net/atm/lec.c b/net/atm/lec.c
index ad4f829193f0..a0311493b01b 100644
--- a/net/atm/lec.c
+++ b/net/atm/lec.c
@@ -726,9 +726,7 @@  static int lecd_attach(struct atm_vcc *vcc, int arg)
 	struct lec_priv *priv;
 
 	if (arg < 0)
-		i = 0;
-	else
-		i = arg;
+		arg = 0;
 	if (arg >= MAX_LEC_ITF)
 		return -EINVAL;
 	i = array_index_nospec(arg, MAX_LEC_ITF);