Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp4687058pxj; Wed, 12 May 2021 10:54:05 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyBtepv7hchBGLFxo1VBNGFRgeKxtaCuAbK2Lg7+Xz6jjr67+ctqIKVSdj3OYVvm+IJ4TxA X-Received: by 2002:a17:907:7848:: with SMTP id lb8mr16471461ejc.494.1620842045617; Wed, 12 May 2021 10:54:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1620842045; cv=none; d=google.com; s=arc-20160816; b=bGBlCGI5kwFPnSIa+sF2T6zbT6diBy3qMh350Qe6IrmfvLN7lb2hEKvRSRPjy7waAj V1lzeCfZTaZdE0YGH71o6WFTVvXuYk8sf3CDKacufpzyFfTOTlsgeUlpCxlky0Aj76Sl 46y1ug4aM4jCrYIVe3jEpPs3btcNrE4zx74pun1CVj7Qd/ZG6prvnnEWQiWe32mU9MZi 55NqoZxRt0WmfbaJ1WFAmOcczKPAVdsyQafy/Se9cvguXEBIpYTafHba6OQC69ztJqor 6fcoMY63LXdBZTMwz5MW3A7bWq08biO5c74aDvRxXJPTpDcfAKmjLkO0IdIht1BhEbAm pVeA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=hfahdytygsfePiiywbM2GikYs97uyw8+/wk96VTxs5A=; b=C3f7JkqvuzHDb9UcG4qo6mBbJhpy5EUIFkhjaIatFBPA50mw55RIKHDiYz3htNwtn7 5TtFG4TEy0oipKwLwUuj8y1J2pfzc56G24878exxjcpj2S/o5EWB2hIadBOWsKy84Mhy MAWnmNIURjOBAlX+SBSRhrcdoNRVInst0yVi6+ny33L68j0HUzE+d7lWlOeo/3i473QL EeiAOlyRfJKc6hP6LzFWQ2dMdbc3M3Cm5z1TdI5jC1saWSj7BA2jT+NSw8YXfeqZUVGE 0rLQqpBDDplIZo43OG3lEtNsoJkMYylNDURevuNJoZ38Nsy6D+oeC9URj+edv1lfweGh ANKg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=NL9NJJ3R; 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=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id p3si225904edu.599.2021.05.12.10.53.41; Wed, 12 May 2021 10:54:05 -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; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=NL9NJJ3R; 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=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1350167AbhELRrk (ORCPT + 99 others); Wed, 12 May 2021 13:47:40 -0400 Received: from mail.kernel.org ([198.145.29.99]:59070 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S240379AbhELQR5 (ORCPT ); Wed, 12 May 2021 12:17:57 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id DB5B4610F7; Wed, 12 May 2021 15:43:53 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1620834234; bh=1Z206rr+ID4sR0PVskAJ2Dfihs0zrPdTKGcuV4niXbI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=NL9NJJ3RcYDGQi0Ewgj5WgUekIQ9bpgyMYp21sUmFWT93X6Oaz4cZ3IT+MAd3d2+T TqEhkYsZt3S9GYK3OVUNtvLwI+0FmI4TwsrHA1y00t0uT8xlITrMA8KYQpgZoGpx4k kEVNsY0I7n6/nTAfmdDrP5CuNo1J2h3nxtXLhtdA= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Colin Ian King , Jakub Kicinski , Kalle Valo , Sasha Levin Subject: [PATCH 5.11 462/601] mt7601u: fix always true expression Date: Wed, 12 May 2021 16:48:59 +0200 Message-Id: <20210512144843.054727677@linuxfoundation.org> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210512144827.811958675@linuxfoundation.org> References: <20210512144827.811958675@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Colin Ian King [ Upstream commit 87fce88658ba047ae62e83497d3f3c5dc22fa6f9 ] Currently the expression ~nic_conf1 is always true because nic_conf1 is a u16 and according to 6.5.3.3 of the C standard the ~ operator promotes the u16 to an integer before flipping all the bits. Thus the top 16 bits of the integer result are all set so the expression is always true. If the intention was to flip all the bits of nic_conf1 then casting the integer result back to a u16 is a suitabel fix. Interestingly static analyzers seem to thing a bitwise ! should be used instead of ~ for this scenario, so I think the original intent of the expression may need some extra consideration. Addresses-Coverity: ("Logical vs. bitwise operator") Fixes: c869f77d6abb ("add mt7601u driver") Signed-off-by: Colin Ian King Acked-by: Jakub Kicinski Signed-off-by: Kalle Valo Link: https://lore.kernel.org/r/20210225183241.1002129-1-colin.king@canonical.com Signed-off-by: Sasha Levin --- drivers/net/wireless/mediatek/mt7601u/eeprom.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/wireless/mediatek/mt7601u/eeprom.c b/drivers/net/wireless/mediatek/mt7601u/eeprom.c index c868582c5d22..aa3b64902cf9 100644 --- a/drivers/net/wireless/mediatek/mt7601u/eeprom.c +++ b/drivers/net/wireless/mediatek/mt7601u/eeprom.c @@ -99,7 +99,7 @@ mt7601u_has_tssi(struct mt7601u_dev *dev, u8 *eeprom) { u16 nic_conf1 = get_unaligned_le16(eeprom + MT_EE_NIC_CONF_1); - return ~nic_conf1 && (nic_conf1 & MT_EE_NIC_CONF_1_TX_ALC_EN); + return (u16)~nic_conf1 && (nic_conf1 & MT_EE_NIC_CONF_1_TX_ALC_EN); } static void -- 2.30.2