[U-Boot] [PATCH] net: explicitly assign errno to return code in case of network failure

Joe Hershberger joe.hershberger at ni.com
Tue Jan 22 21:42:39 UTC 2019


On Wed, Nov 21, 2018 at 8:57 AM Thomas RIENOESSL
<thomas.rienoessl at bachmann.info> wrote:
>
> When dealing with two ethernet ports and having "netretry" set
> to "once", it could occur that the connection (e.g. an ARP
> request) failed, hence the status of the netloop was
> "NETLOOP_FAIL". Due to the setting of "netretry", the network
> logic would then switch to the other network interface,
> assigning "ret" with the return value of "net_start_again()".
> If this call succeeded we would return 0 (i.e. success) to
> the caller when in reality the network action failed.
>
> Change-Id: I58b935b0f6c7a300d1dd0058803f7d3c9455b0dc
> Signed-off-by: Thomas RIENOESSL <thomas.rienoessl at bachmann.info>
> ---
>  net/net.c | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/net/net.c b/net/net.c
> index 31cf306ae7..568ba74f78 100644
> --- a/net/net.c
> +++ b/net/net.c
> @@ -657,6 +657,7 @@ restart:
>                         /* Invalidate the last protocol */
>                         eth_set_last_protocol(BOOTP);
>                         debug_cond(DEBUG_INT_STATE, "--- net_loop Fail!\n");
> +                       ret = -ENONET;
>                         goto done;
>
>                 case NETLOOP_CONTINUE:

Apologies for the delay.

Acked-by: Joe Hershberger <joe.hershberger at ni.com>


More information about the U-Boot mailing list