Subject: Re: [patch net-next v2] ethtool: cabletest: fix wrong conditional check

From: Jakub Kicinski <[email-masked]>
Date: Tue, 27 Aug 2024 19:33:25 -0700

On Tue, 27 Aug 2024 23:09:19 -0300 Diogo Jahchan Koike wrote:
> In ethnl_act_cable_test_tdr, phydev is tested for the condition of being
> null or an error by checking IS_ERR_OR_NULL, however the result is being
> negated and lets a null phydev go through. Simply removing the logical
> NOT on the conditional suffices.
> 
> Reported-by: [email-masked]
> Closes: https://syzkaller.appspot.com/bug?extid=5cf270e2069645b6bd2c
> Fixes: 3688ff3077d3 ("net: ethtool: cable-test: Target the command to the requested PHY")
> Signed-off-by: Diogo Jahchan Koike <[email-masked]>
> ---
> The previous patch was sent without the appropriate tags, apologize for
> that.

You were already told by Eric not to repost within 24h.

https://lore.kernel.org/all/CANn89iJ0qNYP8zMz6jDtP2=[email-masked]/

There's already a fix from Maxime pending for this:
https://lore.kernel.org/all/[email-masked]/

I didn't need to see the tags to tell you this.

> diff --git a/net/ethtool/cabletest.c b/net/ethtool/cabletest.c
> index d365ad5f5434..f25da884b3dd 100644
> --- a/net/ethtool/cabletest.c
> +++ b/net/ethtool/cabletest.c
> @@ -346,7 +346,7 @@ int ethnl_act_cable_test_tdr(struct sk_buff *skb, struct genl_info *info)
>  	phydev = ethnl_req_get_phydev(&req_info,
>  				      tb[ETHTOOL_A_CABLE_TEST_TDR_HEADER],
>  				      info->extack);
> -	if (!IS_ERR_OR_NULL(phydev)) {
> +	if (IS_ERR_OR_NULL(phydev)) {
>  		ret = -EOPNOTSUPP;
>  		goto out_dev_put;
>  	}

-- 
pw-bot: nap
pv-bot: 24h