From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-15.3 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 36760C47095 for ; Wed, 9 Jun 2021 09:51:14 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 0E84B61377 for ; Wed, 9 Jun 2021 09:51:14 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238315AbhFIJxH (ORCPT ); Wed, 9 Jun 2021 05:53:07 -0400 Received: from youngberry.canonical.com ([91.189.89.112]:37622 "EHLO youngberry.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233188AbhFIJxG (ORCPT ); Wed, 9 Jun 2021 05:53:06 -0400 Received: from 1.general.cking.uk.vpn ([10.172.193.212]) by youngberry.canonical.com with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.93) (envelope-from ) id 1lqure-0004oT-5A; Wed, 09 Jun 2021 09:51:10 +0000 Subject: Re: [PATCH 2/2][next] net: usb: asix: ax88772: net: Fix less than zero comparison of a u16 To: Oleksij Rempel Cc: "David S . Miller" , Jakub Kicinski , Oleksij Rempel , linux-usb@vger.kernel.org, netdev@vger.kernel.org, kernel-janitors@vger.kernel.org, linux-kernel@vger.kernel.org References: <20210608152249.160333-1-colin.king@canonical.com> <20210608152249.160333-2-colin.king@canonical.com> <20210608181129.7mnuba6dcaemslul@pengutronix.de> From: Colin Ian King Message-ID: Date: Wed, 9 Jun 2021 10:51:09 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.11.0 MIME-Version: 1.0 In-Reply-To: <20210608181129.7mnuba6dcaemslul@pengutronix.de> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Precedence: bulk List-ID: X-Mailing-List: linux-usb@vger.kernel.org On 08/06/2021 19:11, Oleksij Rempel wrote: > On Tue, Jun 08, 2021 at 04:22:49PM +0100, Colin King wrote: >> From: Colin Ian King >> >> The comparison of the u16 priv->phy_addr < 0 is always false because >> phy_addr is unsigned. Fix this by assigning the return from the call >> to function asix_read_phy_addr to int ret and using this for the >> less than zero error check comparison. >> >> Addresses-Coverity: ("Unsigned compared against 0") >> Fixes: 7e88b11a862a ("net: usb: asix: refactor asix_read_phy_addr() and handle errors on return") > > Here is wrong Fixes tag. This assignment was bogus before this patch. I'm not sure that's correct, that commit has the following change in it: diff --git a/drivers/net/usb/ax88172a.c b/drivers/net/usb/ax88172a.c index b404c9462dce..c8ca5187eece 100644 --- a/drivers/net/usb/ax88172a.c +++ b/drivers/net/usb/ax88172a.c @@ -220,6 +220,11 @@ static int ax88172a_bind(struct usbnet *dev, struct usb_interface *intf) } priv->phy_addr = asix_read_phy_addr(dev, priv->use_embdphy); + if (priv->phy_addr < 0) { + ret = priv->phy_addr; + goto free; + } + > >> Signed-off-by: Colin Ian King >> --- >> drivers/net/usb/ax88172a.c | 3 ++- >> 1 file changed, 2 insertions(+), 1 deletion(-) >> >> diff --git a/drivers/net/usb/ax88172a.c b/drivers/net/usb/ax88172a.c >> index 2e2081346740..e24773bb9398 100644 >> --- a/drivers/net/usb/ax88172a.c >> +++ b/drivers/net/usb/ax88172a.c >> @@ -205,7 +205,8 @@ static int ax88172a_bind(struct usbnet *dev, struct usb_interface *intf) >> goto free; >> } >> >> - priv->phy_addr = asix_read_phy_addr(dev, priv->use_embdphy); >> + ret = asix_read_phy_addr(dev, priv->use_embdphy); >> + priv->phy_addr = ret; > > Ah.. it is same bug in different color :) > You probably wonted to do: > if (ret < 0) > goto free; > > priv->phy_addr = ret; Doh, brain failure of mine. I'll send a V2 later today. > >> if (priv->phy_addr < 0) { >> ret = priv->phy_addr; >> goto free; >> -- >> 2.31.1 >> >> >