Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp4564602pxj; Wed, 12 May 2021 08:17:23 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx81fb7kWTgdOdFOzXwDfu9gBH9hFk1G3bDWD6zBYNqb4z/nFzJIiLoN5cBp8Qs8uXyKz9T X-Received: by 2002:a05:6830:22d5:: with SMTP id q21mr16777473otc.146.1620832642870; Wed, 12 May 2021 08:17:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1620832642; cv=none; d=google.com; s=arc-20160816; b=PzOUQ60SUalrwxA+3FpIDZi2vLUe2+PifZZzLk+8Rcz3S1MD3rzALPYan0hjRZWm8L MsaOF2MlPhPVYKgz9wAJ4iWpcvGE0ZJgs5FwzpgbApa54A78CbWFtGDwmcHKmEUgSiT/ nLck8Vxjq0mhtnZp19irFU6HYLuu02wkc3/bA+z12U85/5IBecRw+/vaH4apWAZHbysu sUEQskOBxiDFm+Rr1JVSYv+s03NpENIu/TmZt6AIcCMyagtIwiCRNS2UUb2V3IIgYiao cJ1WVFWepMDVM5kwkpYnq2h8n9O26bioYKu9TeUEFa3uG2aVGT2krbODUi/TidlkhWY3 zKFA== 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=u5xwE8mJS6K7ZugoOI3VW43JiLi5ycxPtfUW6PLffIubGQV3C9Vmv4LE80VR5AHsjp SpTXFU3Y4GZVgsdqIF8Yw3JgDU3y6A7nqbBDy3c+jRTTbA/h2Q3EZt7FL75RUe9T6hFj bO0kL58bkYC3Kz/4TLWS1t1BBDIwUNYGP9tMKj/bCWLEqyPXhGCnT/67IXRASh50KAu3 ocaaLynLfhzWk2sDi0c6FKI8rY+bIGG6xzR45WUyHc0WVMpkzccG7+mN66GcIEZz3abB WlwHzIrFJGTkGDQlcuD8pxvnObYDFuUXp3VS8Rc6AIrx0dWnVMb2CffvhXd3vdLXeTQj 571A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=V6HNNltH; 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 e128si169566oob.68.2021.05.12.08.17.08; Wed, 12 May 2021 08:17:22 -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=V6HNNltH; 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 S233537AbhELPOJ (ORCPT + 99 others); Wed, 12 May 2021 11:14:09 -0400 Received: from mail.kernel.org ([198.145.29.99]:59082 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233406AbhELPFT (ORCPT ); Wed, 12 May 2021 11:05:19 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 554B56194E; Wed, 12 May 2021 15:00:16 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1620831616; bh=1Z206rr+ID4sR0PVskAJ2Dfihs0zrPdTKGcuV4niXbI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=V6HNNltHFRxL0S1CrOp3ao3xlzIA1jBkrOM0FkGOqhlAcTvK7YK6heq/J5lYBme+l MhJN5Rkxm1Xs2nV90Iyu5Ig8LQMcqQ4wcXBZHTiWC7hoTxuYGLOwQZ20Rli2ypnka6 HD3PGD4zRqUAGgSPn5eMjU+bPolZmrOs6R89/3Aw= 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.4 190/244] mt7601u: fix always true expression Date: Wed, 12 May 2021 16:49:21 +0200 Message-Id: <20210512144749.077786479@linuxfoundation.org> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20210512144743.039977287@linuxfoundation.org> References: <20210512144743.039977287@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