[PATCH net-next v18 07/13] net: ethtool: Introduce a command to list PHYs on an interface

Eric Dumazet edumazet at google.com
Tue Sep 10 10:23:30 PDT 2024


On Tue, Sep 10, 2024 at 7:20 PM Maxime Chevallier
<maxime.chevallier at bootlin.com> wrote:
>
> Hello Eric,
>
> On Tue, 10 Sep 2024 18:41:03 +0200
> Eric Dumazet <edumazet at google.com> wrote:
>
> > > +int ethnl_phy_doit(struct sk_buff *skb, struct genl_info *info)
> > > +{
> > > +       struct phy_req_info req_info = {};
> > > +       struct nlattr **tb = info->attrs;
> > > +       struct sk_buff *rskb;
> > > +       void *reply_payload;
> > > +       int reply_len;
> > > +       int ret;
> > > +
> > > +       ret = ethnl_parse_header_dev_get(&req_info.base,
> > > +                                        tb[ETHTOOL_A_PHY_HEADER],
> > > +                                        genl_info_net(info), info->extack,
> > > +                                        true);
> > > +       if (ret < 0)
> > > +               return ret;
> > > +
> > > +       rtnl_lock();
> > > +
> > > +       ret = ethnl_phy_parse_request(&req_info.base, tb, info->extack);
> > > +       if (ret < 0)
> > > +               goto err_unlock_rtnl;
> > > +
> > > +       /* No PHY, return early */
> >
> > I got a syzbot report here.
>
> I seem to have missed the report, sorry about that.
>
> >
> > Should we fix this with :
> >
> > diff --git a/net/ethtool/phy.c b/net/ethtool/phy.c
> > index 560dd039c6625ac0925a0f28c14ce77cf768b6a5..4ef7c6e32d1087dc71acb467f9cd2ab8faf4dc39
> > 100644
> > --- a/net/ethtool/phy.c
> > +++ b/net/ethtool/phy.c
> > @@ -164,7 +164,7 @@ int ethnl_phy_doit(struct sk_buff *skb, struct
> > genl_info *info)
> >                 goto err_unlock_rtnl;
> >
> >         /* No PHY, return early */
> > -       if (!req_info.pdn->phy)
> > +       if (!req_info.pdn)
> >                 goto err_unlock_rtnl;
> >
> >         ret = ethnl_phy_reply_size(&req_info.base, info->extack);
> >
> >
>
> Indeed that's the correct fix. Should I send it ? ( including
> suggested-by/reported-by )

Yes please, go ahead.

>
> Thanks,
>
> Maxime



More information about the linux-arm-kernel mailing list