Received: by 2002:a25:1506:0:0:0:0:0 with SMTP id 6csp1589153ybv; Thu, 20 Feb 2020 23:50:54 -0800 (PST) X-Google-Smtp-Source: APXvYqx45e2bNd72I6lRI+KDHol7HJIALhUJzmlQmWhnWIEQxRxUwmmca+EOce1ElXLDXm1bb+Hy X-Received: by 2002:aca:1704:: with SMTP id j4mr904543oii.12.1582271454328; Thu, 20 Feb 2020 23:50:54 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1582271454; cv=none; d=google.com; s=arc-20160816; b=sFh9mdJhBqMvyqEM0ADoJdfuhWA0xeDx5FD20tO4PAniT/Scf2MfrpOXEhcIzuloZY IHoQF3489xPAWB5AOhO619CADSzOPAWbMDvvvuP4MUUdIemcwxxooC6k1YQ+iYSyH3zO eCcgt27aNXe6Ngs8Pq0rHzayUdw2kyvX4mfrHDhuxqjmYL1BQ2x29ecr1wTs5EJv/PqS ZwBA13w0IjU2XvSM6VLIZgTpwCid2mkAYQzfia0JB1wKxCxebn6yh1URdMtZyxrg0g7L LRt/VOKy9at3hwzSz2MDsyajEJlG27BzDT+GUzcfN4sTggu5xMEeg43i20bV2RtVkN+J DO3w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=KQtaz1orHprURnZ0lGdIC3qtBhygkhHANHYfjn8Qjvw=; b=Th13jSL7ADDTeFqOl8vB4n/vcT9RFfGlU1fqCJtkMa4Ov5eTze4R2AUDybapycjUAq RXjmS5xMVy2Lhw0HkMonvUPllxa8Ap6mi72l6n3G4ktfRI65CxT+ixeROtrARzdiIWys U3+FkVWgkcOyw5MwKyYAdeCepX5QApGVFFE0wll53x5CfYzMDxbrUGys4iZLOGv5FN2N 9MC+EZK+7CuHICr9/e5WGTYGxQtPzispEJljM74Ihtn9gy420wKO2/my9bT/9GHjSDvl so0iS88AsAhXrHMiWlZWr00AmpGWRLVH3BPSeAGxBlU0n0rVNade3IrouvLVJqpGnabC 56Aw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=gPuelTug; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id t3si1064543oth.247.2020.02.20.23.50.42; Thu, 20 Feb 2020 23:50:54 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=gPuelTug; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728981AbgBUHti (ORCPT + 99 others); Fri, 21 Feb 2020 02:49:38 -0500 Received: from mail.kernel.org ([198.145.29.99]:46164 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729359AbgBUHth (ORCPT ); Fri, 21 Feb 2020 02:49:37 -0500 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 97298207FD; Fri, 21 Feb 2020 07:49:35 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1582271376; bh=hBhHgVs21RfUtJ9MHJuULdGWNwNaJs1/5JtqnA9mtJE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=gPuelTugs7HtS+Oh/YYcz0V96mf3cW4eF/yIDkJSuwXYdHn5rpy6516VXgx+tdi7h Pw/mBcC2dgm0t7XIvUYl71YoysymbJ4NVs/Xu4svFOvfCtZ5ClIGz2ANQUXj5d0lPX Ci0lL0m8gjBkRXqheMmf8epR/nK7x90E1wRqjMr0= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Ezequiel Garcia , Nick Desaulniers , Nathan Chancellor , Hans Verkuil , Mauro Carvalho Chehab , Sasha Levin Subject: [PATCH 5.5 141/399] media: v4l2-device.h: Explicitly compare grp{id,mask} to zero in v4l2_device macros Date: Fri, 21 Feb 2020 08:37:46 +0100 Message-Id: <20200221072416.179424460@linuxfoundation.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20200221072402.315346745@linuxfoundation.org> References: <20200221072402.315346745@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Nathan Chancellor [ Upstream commit afb34781620274236bd9fc9246e22f6963ef5262 ] When building with Clang + -Wtautological-constant-compare, several of the ivtv and cx18 drivers warn along the lines of: drivers/media/pci/cx18/cx18-driver.c:1005:21: warning: converting the result of '<<' to a boolean always evaluates to true [-Wtautological-constant-compare] cx18_call_hw(cx, CX18_HW_GPIO_RESET_CTRL, ^ drivers/media/pci/cx18/cx18-cards.h:18:37: note: expanded from macro 'CX18_HW_GPIO_RESET_CTRL' #define CX18_HW_GPIO_RESET_CTRL (1 << 6) ^ 1 warning generated. This warning happens because the shift operation is implicitly converted to a boolean in v4l2_device_mask_call_all before being negated. This can be solved by just comparing the mask result to 0 explicitly so that there is no boolean conversion. The ultimate goal is to enable -Wtautological-compare globally because there are several subwarnings that would be helpful to have. For visual consistency and avoidance of these warnings in the future, all of the implicitly boolean conversions in the v4l2_device macros are converted to explicit ones as well. Link: https://github.com/ClangBuiltLinux/linux/issues/752 Reviewed-by: Ezequiel Garcia Reviewed-by: Nick Desaulniers Signed-off-by: Nathan Chancellor Signed-off-by: Hans Verkuil Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Sasha Levin --- include/media/v4l2-device.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/include/media/v4l2-device.h b/include/media/v4l2-device.h index 5f36e0d2ede67..95353ae476a18 100644 --- a/include/media/v4l2-device.h +++ b/include/media/v4l2-device.h @@ -371,7 +371,7 @@ static inline bool v4l2_device_supports_requests(struct v4l2_device *v4l2_dev) struct v4l2_subdev *__sd; \ \ __v4l2_device_call_subdevs_p(v4l2_dev, __sd, \ - !(grpid) || __sd->grp_id == (grpid), o, f , \ + (grpid) == 0 || __sd->grp_id == (grpid), o, f , \ ##args); \ } while (0) @@ -403,7 +403,7 @@ static inline bool v4l2_device_supports_requests(struct v4l2_device *v4l2_dev) ({ \ struct v4l2_subdev *__sd; \ __v4l2_device_call_subdevs_until_err_p(v4l2_dev, __sd, \ - !(grpid) || __sd->grp_id == (grpid), o, f , \ + (grpid) == 0 || __sd->grp_id == (grpid), o, f , \ ##args); \ }) @@ -431,8 +431,8 @@ static inline bool v4l2_device_supports_requests(struct v4l2_device *v4l2_dev) struct v4l2_subdev *__sd; \ \ __v4l2_device_call_subdevs_p(v4l2_dev, __sd, \ - !(grpmsk) || (__sd->grp_id & (grpmsk)), o, f , \ - ##args); \ + (grpmsk) == 0 || (__sd->grp_id & (grpmsk)), o, \ + f , ##args); \ } while (0) /** @@ -462,8 +462,8 @@ static inline bool v4l2_device_supports_requests(struct v4l2_device *v4l2_dev) ({ \ struct v4l2_subdev *__sd; \ __v4l2_device_call_subdevs_until_err_p(v4l2_dev, __sd, \ - !(grpmsk) || (__sd->grp_id & (grpmsk)), o, f , \ - ##args); \ + (grpmsk) == 0 || (__sd->grp_id & (grpmsk)), o, \ + f , ##args); \ }) -- 2.20.1