Re: [PATCH] u-boot: fix error check in eth init

Yuxiao Zhang <[email protected]>
Newsgroups org.u-boot-project.lists.u-boot
Message-ID <CAOOoKeQPDO0FTN0ya+W5-HR0DsadcbXFgfyG=SwG9DaM8S-GWA@mail.gmail.com>
IMHO at least the activation check is a valid case. It just check the
status flag and returns EINVAL without setting errno:

292         if (!device_active(dev))
293                 return -EINVAL;

Thanks,
-Yuxiao



On Wed, Aug 26, 2026 at 1:02 PM Tom Rini <[email protected]> wrote:

> On Wed, Aug 26, 2026 at 11:14:19AM -0700, Yuxiao Zhang wrote:
>
> > eth_start_udev can fail but errno could still be zero which causes the
> > function ignores the error silently. This fix catches the error
> > properly.
> >
> > Signed-off-by: Yuxiao Zhang <[email protected]>
> > ---
> >
> >  net/eth-uclass.c | 11 ++++++-----
> >  1 file changed, 6 insertions(+), 5 deletions(-)
> >
> > diff --git a/net/eth-uclass.c b/net/eth-uclass.c
> > index 5c437143a30..5518268bd68 100644
> > --- a/net/eth-uclass.c
> > +++ b/net/eth-uclass.c
> > @@ -347,12 +347,13 @@ int eth_init(void)
> >                       debug("Trying %s\n", current->name);
> >
> >                       ret = eth_start_udev(current);
> > -                     if (ret < 0)
> > -                             ret = eth_errno;
> > -                     else
> > +                     if (ret < 0) {
> > +                             if (eth_errno < 0)
> > +                                     ret = eth_errno;
> > +                             debug("%s start failed (ret=%d)\n",
> current->name, ret);
> > +                     } else {
> >                               break;
> > -
> > -                     debug("FAIL\n");
> > +                     }
> >               } else {
> >                       debug("PROBE FAIL\n");
> >               }
>
> Is it a valid case for eth_start_udev to have failed and not set eth_errno?
>
> --
> Tom
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.