Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp5011788pxj; Wed, 9 Jun 2021 07:16:01 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzyFAeC/tkwORMY56514EFiPbNKAXFZIdjCPf/jozajRldUHNV+WyjL/IRjXl/1oCgzbuSX X-Received: by 2002:a17:906:390f:: with SMTP id f15mr112670eje.270.1623248161319; Wed, 09 Jun 2021 07:16:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1623248161; cv=none; d=google.com; s=arc-20160816; b=LZbWzHPSVx7pOkvlE20VVbwZY+SkKZfRG4Li3rOL8oWLYcoersPS3NoMOVZL1oyLYt HhJw9wt8F9NteeCM8r5k0+MRtxPeTrlx9L48mEiVksuNSX0UI4PIgqnSTCPbvojz60Mf BmuTOeQxLDSLLKztBN+rkIZ0CEWnkSXwyo80mGaBjwitzwlkQFsnlb5gQCMGHsSwTuEi 240F0MqFYXoozt7FfreZJXH3TwIxBNM4YzG6QtUdZhbeVuyVAL5Ngt55Oaz3oRYuWy6H N3M/nVo4n437he0kQ7cK5E1edDU0ZEtE8DOXxvBPvmVWEsNJs4A754CNJf7jBAtsWn/2 n9PA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject; bh=Z5hoDW3FK/L8GTK39FA1qr4YP/Tuh8IjGNp/l6g22p0=; b=KU+rAmYZIxxrRqLQVRTucsu0RaMOQi4iGdw526Nc7S+c5KL9hsshlltE8IGptPmpKm umzZ7ZgIemJOtI9hc3N/CFHBLz1rCI30pnhIPvE2gwrfo1y+o8sD5+6bKuMYnXORcz5i Gc3hg5tjg3azYWT3SOLLSWLuLJXrH+pGDRW0kUS4R2OIiWYtNyFO8IHrUK1OlBM6+6BN k6Awr/YMyLWtypS1r4/x9ZhConswK9p7x5tNkfZUXbKZSvk2JUQ86OgoNnY9p9RbFyut jpCbFjwKHVOJgrrs1aS8aPwVLWyEGZQQLugIFBM+mwn3F8OZEtvZ4kr3N/UJij8TAlmk h0uw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=canonical.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id kl25si2438528ejc.370.2021.06.09.07.15.33; Wed, 09 Jun 2021 07:16:01 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=canonical.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238321AbhFIJxH (ORCPT + 99 others); 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-kernel@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 >> >> >