[Patch] Signedness issue in drivers/net/3c515.c

From: Eric Sesterhenn
Date: Sat Aug 19 2006 - 13:35:29 EST


while playing with gcc 4.1 -Wextra warnings, I came across this one:

drivers/net/3c515.c:1027: warning: comparison of unsigned expression >= 0 is always true

Since i is unsigned the >= 0 check in the for loop is always true,
so we might spin there forever unless the if condition triggers.
Since i is only used in this loop, this patch changes it to
an integer.

Signed-off-by: Eric Sesterhenn <snakebyte@xxxxxx>

--- linux-2.6.18-rc4/drivers/net/3c515.c.orig 2006-08-19 19:35:04.000000000 +0200
+++ linux-2.6.18-rc4/drivers/net/3c515.c 2006-08-19 19:35:14.000000000 +0200
@@ -1003,7 +1003,8 @@ static int corkscrew_start_xmit(struct s
/* Calculate the next Tx descriptor entry. */
int entry = vp->cur_tx % TX_RING_SIZE;
struct boom_tx_desc *prev_entry;
- unsigned long flags, i;
+ unsigned long flags;
+ int i;

if (vp->tx_full) /* No room to transmit with */
return 1;

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/