]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
net: Fix netretry condition
authorLeonid Iziumtsev <leonid.iziumtsev@gmail.com>
Fri, 9 Mar 2018 14:29:06 +0000 (15:29 +0100)
committerJoe Hershberger <joe.hershberger@ni.com>
Thu, 22 Mar 2018 20:05:31 +0000 (15:05 -0500)
The "net_try_count" counter starts from "1".
And the "retrycnt" contains requested amount of retries.

With current logic, that means that the actual retry amount
will be one time less then what we set in "netretry" env.
For example setting "netretry" to "once" will make "retrycnt"
equal "1", so no retries will be triggered at all.

Fix the logic by changing the statement of "if" condition.

Signed-off-by: Leonid Iziumtsev <leonid.iziumtsev@se.atlascopco.com>
Acked-by: Joe Hershberger <joe.hershberger@ni.com>
net/net.c

index 4259c9e321d6905efef6ca5abe441e89943eab9f..8a9b69c6b0b098743609c6141040a1c1fb7a0850 100644 (file)
--- a/net/net.c
+++ b/net/net.c
@@ -683,7 +683,7 @@ int net_start_again(void)
                retry_forever = 0;
        }
 
-       if ((!retry_forever) && (net_try_count >= retrycnt)) {
+       if ((!retry_forever) && (net_try_count > retrycnt)) {
                eth_halt();
                net_set_state(NETLOOP_FAIL);
                /*