diff options
author | Arnd Bergmann <arnd@arndb.de> | 2016-01-29 14:39:14 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-01-30 07:33:39 +0300 |
commit | 8bdb290896d2ff22942c9c9f5bf19909329f3664 (patch) | |
tree | 6e29b42ed69a5248d89a33a54844c7c25b16cd8b /drivers/net/ethernet/aurora/nb8800.c | |
parent | 57e7c8cef224af166b8ec932b5e383641418c005 (diff) | |
download | linux-8bdb290896d2ff22942c9c9f5bf19909329f3664.tar.xz |
net: nb8800: avoid uninitialized variable warning
The nb8800_poll() function initializes the 'next' variable in the
loop looking for new input data. We know this will be called at
least once because 'budget' is a guaranteed to be a positive number
when we enter the function, but the compiler doesn't know that
and warns when the variable is used later:
drivers/net/ethernet/aurora/nb8800.c: In function 'nb8800_poll':
drivers/net/ethernet/aurora/nb8800.c:350:21: warning: 'next' may be used uninitialized in this function [-Wmaybe-uninitialized]
Changing the 'while() {}' loop to 'do {} while()' makes it obvious
to the compiler what is going on so it no longer warns.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Acked-by: Mans Rullgard <mans@mansr.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/aurora/nb8800.c')
-rw-r--r-- | drivers/net/ethernet/aurora/nb8800.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/ethernet/aurora/nb8800.c b/drivers/net/ethernet/aurora/nb8800.c index ecc4a334c507..f71ab2647a3b 100644 --- a/drivers/net/ethernet/aurora/nb8800.c +++ b/drivers/net/ethernet/aurora/nb8800.c @@ -302,7 +302,7 @@ static int nb8800_poll(struct napi_struct *napi, int budget) nb8800_tx_done(dev); again: - while (work < budget) { + do { struct nb8800_rx_buf *rxb; unsigned int len; @@ -330,7 +330,7 @@ again: rxd->report = 0; last = next; work++; - } + } while (work < budget); if (work) { priv->rx_descs[last].desc.config |= DESC_EOC; |