| Message ID | 20251017090519.46992-13-farbere@amazon.com |
|---|---|
| State | Not Applicable |
| Headers | show
Return-Path:
<linux-um-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org>
X-Original-To: incoming@patchwork.ozlabs.org
Delivered-To: patchwork-incoming@legolas.ozlabs.org
Authentication-Results: legolas.ozlabs.org;
dkim=pass (2048-bit key;
secure) header.d=lists.infradead.org header.i=@lists.infradead.org
header.a=rsa-sha256 header.s=bombadil.20210309 header.b=K+vNgkjZ;
dkim=pass (2048-bit key;
unprotected) header.d=amazon.com header.i=@amazon.com header.a=rsa-sha256
header.s=amazoncorp2 header.b=U+D0PN32;
dkim-atps=neutral
Authentication-Results: legolas.ozlabs.org;
spf=none (no SPF record) smtp.mailfrom=lists.infradead.org
(client-ip=2607:7c80:54:3::133; helo=bombadil.infradead.org;
envelope-from=linux-um-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org;
receiver=patchwork.ozlabs.org)
Received: from bombadil.infradead.org (bombadil.infradead.org
[IPv6:2607:7c80:54:3::133])
(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384)
(No client certificate requested)
by legolas.ozlabs.org (Postfix) with ESMTPS id 4d3hK10hjRz1yKk
for <incoming@patchwork.ozlabs.org>; Sun, 9 Nov 2025 03:31:49 +1100 (AEDT)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help
:List-Post:List-Archive:List-Unsubscribe:List-Id:Content-Type:
Content-Transfer-Encoding:MIME-Version:References:In-Reply-To:Message-ID:Date
:Subject:CC:To:From:Reply-To:Content-ID:Content-Description:Resent-Date:
Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner;
bh=Up26bfkjgG7bBpXTUDNOne3Gaz9xL27H6G5Ic5zP1jo=; b=K+vNgkjZV8uqBYOraJ3aRDEi8o
VPKeJTPXi5vn/JCzJRgyaSNjHgXAYQvSPonPE/E8lt8jbZDP/r//oD7H386lSSkcA/5Rlv/hLwCxH
H3sHISEJAPknCVNR0p4xwqqKd/0Btdmteczg8itpBONc94sPvKNUNeHKhRdnqnlt+bX2c1rr35FGG
9s+4jSHKhQM2a2R0AFoLtLo8nUn3k0RD/DhinHf+MNXR8m5JWVkV1YWpQf1oaHrR95Ss5Oj3GSRpb
XaQoEjHezQu5EwqK3HWVCNXImUHNbnzmuyphysAsio48WiAnud6p3YRtGyBx6njMmxC3Dc8VPXzFH
BOm//4+w==;
Received: from localhost ([::1] helo=bombadil.infradead.org)
by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux))
id 1vHlqt-00000003Gj1-0kqQ;
Sat, 08 Nov 2025 16:31:47 +0000
Received: from pdx-out-014.esa.us-west-2.outbound.mail-perimeter.amazon.com
([35.83.148.184])
by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux))
id 1v9gT7-00000007E44-27k1;
Fri, 17 Oct 2025 09:09:50 +0000
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=amazon.com; i=@amazon.com; q=dns/txt; s=amazoncorp2;
t=1760692189; x=1792228189;
h=from:to:cc:subject:date:message-id:in-reply-to:
references:mime-version:content-transfer-encoding;
bh=Up26bfkjgG7bBpXTUDNOne3Gaz9xL27H6G5Ic5zP1jo=;
b=U+D0PN32Q96DFPq5pth67xzqwFMYWytMV8iBYHjth6SDJpljD+UcSaDa
2uFbgyYapWYopy3mecoFxTfPkxHOlB4QVCa91II3zG/ZBTlyaRZ/eksC5
34fh5oMVgxU+qSqvmUYU+6Dugxpdol1Rp4T8SBELxlNGZFHfIhZAZlC3B
nNRwc2tWtk48nlynEEhnT7l1Cko7nEYjS+qwlcLRbmQvyz2uKaeKDYupm
lhrg3OmVIp/LkrtosWbHOGQWPUtKvGJCxKo6qZ6Ko2lWJW0tiAW/EH+92
lNctqorAqu1M2uknt8Odc/eoToKxd6CtKCfBKTI9QOSN4EGCh682n5AJq
A==;
X-CSE-ConnectionGUID: xOUon0rMSAWXpCnrLndgPQ==
X-CSE-MsgGUID: naWtjRFdQQKyK0q+UtSrnA==
X-IronPort-AV: E=Sophos;i="6.19,236,1754956800";
d="scan'208";a="4872869"
Received: from ip-10-5-9-48.us-west-2.compute.internal (HELO
smtpout.naws.us-west-2.prod.farcaster.email.amazon.dev) ([10.5.9.48])
by internal-pdx-out-014.esa.us-west-2.outbound.mail-perimeter.amazon.com
with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Oct 2025 09:09:48 +0000
Received: from EX19MTAUWB001.ant.amazon.com [205.251.233.51:22503]
by smtpin.naws.us-west-2.prod.farcaster.email.amazon.dev [10.0.11.52:2525]
with esmtp (Farcaster)
id afadfc4d-8ec4-41e1-a6a1-0baad1997a5c;
Fri, 17 Oct 2025 09:09:48 +0000 (UTC)
X-Farcaster-Flow-ID: afadfc4d-8ec4-41e1-a6a1-0baad1997a5c
Received: from EX19D001UWA001.ant.amazon.com (10.13.138.214) by
EX19MTAUWB001.ant.amazon.com (10.250.64.248) with Microsoft SMTP Server
(version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA) id 15.2.2562.20;
Fri, 17 Oct 2025 09:09:35 +0000
Received: from dev-dsk-farbere-1a-46ecabed.eu-west-1.amazon.com
(172.19.116.181) by EX19D001UWA001.ant.amazon.com (10.13.138.214) with
Microsoft SMTP Server (version=TLS1_2,
cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA) id 15.2.2562.20; Fri, 17 Oct 2025
09:09:20 +0000
From: Eliav Farber <farbere@amazon.com>
To: <gregkh@linuxfoundation.org>, <stable@vger.kernel.org>,
<linux@armlinux.org.uk>, <jdike@addtoit.com>, <richard@nod.at>,
<anton.ivanov@cambridgegreys.com>, <dave.hansen@linux.intel.com>,
<luto@kernel.org>, <peterz@infradead.org>, <tglx@linutronix.de>,
<mingo@redhat.com>, <bp@alien8.de>, <x86@kernel.org>, <hpa@zytor.com>,
<tony.luck@intel.com>, <qiuxu.zhuo@intel.com>, <mchehab@kernel.org>,
<james.morse@arm.com>, <rric@kernel.org>, <harry.wentland@amd.com>,
<sunpeng.li@amd.com>, <alexander.deucher@amd.com>,
<christian.koenig@amd.com>, <airlied@linux.ie>, <daniel@ffwll.ch>,
<evan.quan@amd.com>, <james.qian.wang@arm.com>, <liviu.dudau@arm.com>,
<mihail.atanassov@arm.com>, <brian.starkey@arm.com>,
<maarten.lankhorst@linux.intel.com>, <mripard@kernel.org>,
<tzimmermann@suse.de>, <robdclark@gmail.com>, <sean@poorly.run>,
<jdelvare@suse.com>, <linux@roeck-us.net>, <fery@cypress.com>,
<dmitry.torokhov@gmail.com>, <agk@redhat.com>, <snitzer@redhat.com>,
<dm-devel@redhat.com>, <rajur@chelsio.com>, <davem@davemloft.net>,
<kuba@kernel.org>, <peppe.cavallaro@st.com>, <alexandre.torgue@st.com>,
<joabreu@synopsys.com>, <mcoquelin.stm32@gmail.com>, <malattia@linux.it>,
<hdegoede@redhat.com>, <mgross@linux.intel.com>, <intel-linux-scu@intel.com>,
<artur.paszkiewicz@intel.com>, <jejb@linux.ibm.com>,
<martin.petersen@oracle.com>, <sakari.ailus@linux.intel.com>, <clm@fb.com>,
<josef@toxicpanda.com>, <dsterba@suse.com>, <xiang@kernel.org>,
<chao@kernel.org>, <jack@suse.com>, <tytso@mit.edu>,
<adilger.kernel@dilger.ca>, <dushistov@mail.ru>,
<luc.vanoostenryck@gmail.com>, <rostedt@goodmis.org>, <pmladek@suse.com>,
<sergey.senozhatsky@gmail.com>, <andriy.shevchenko@linux.intel.com>,
<linux@rasmusvillemoes.dk>, <minchan@kernel.org>, <ngupta@vflare.org>,
<akpm@linux-foundation.org>, <kuznet@ms2.inr.ac.ru>,
<yoshfuji@linux-ipv6.org>, <pablo@netfilter.org>, <kadlec@netfilter.org>,
<fw@strlen.de>, <jmaloy@redhat.com>, <ying.xue@windriver.com>,
<willy@infradead.org>, <farbere@amazon.com>, <sashal@kernel.org>,
<ruanjinjie@huawei.com>, <David.Laight@ACULAB.COM>,
<herve.codina@bootlin.com>, <Jason@zx2c4.com>, <keescook@chromium.org>,
<kbusch@kernel.org>, <nathan@kernel.org>, <bvanassche@acm.org>,
<ndesaulniers@google.com>, <linux-arm-kernel@lists.infradead.org>,
<linux-kernel@vger.kernel.org>, <linux-um@lists.infradead.org>,
<linux-edac@vger.kernel.org>, <amd-gfx@lists.freedesktop.org>,
<dri-devel@lists.freedesktop.org>, <linux-arm-msm@vger.kernel.org>,
<freedreno@lists.freedesktop.org>, <linux-hwmon@vger.kernel.org>,
<linux-input@vger.kernel.org>, <linux-media@vger.kernel.org>,
<netdev@vger.kernel.org>, <linux-stm32@st-md-mailman.stormreply.com>,
<platform-driver-x86@vger.kernel.org>, <linux-scsi@vger.kernel.org>,
<linux-staging@lists.linux.dev>, <linux-btrfs@vger.kernel.org>,
<linux-erofs@lists.ozlabs.org>, <linux-ext4@vger.kernel.org>,
<linux-sparse@vger.kernel.org>, <linux-mm@kvack.org>,
<netfilter-devel@vger.kernel.org>, <coreteam@netfilter.org>,
<tipc-discussion@lists.sourceforge.net>
CC: Christoph Hellwig <hch@infradead.org>, Linus Torvalds
<torvalds@linux-foundation.org>
Subject: [PATCH v2 12/27 5.10.y] minmax: relax check to allow comparison
between unsigned arguments and signed constants
Date: Fri, 17 Oct 2025 09:05:04 +0000
Message-ID: <20251017090519.46992-13-farbere@amazon.com>
X-Mailer: git-send-email 2.47.3
In-Reply-To: <20251017090519.46992-1-farbere@amazon.com>
References: <20251017090519.46992-1-farbere@amazon.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-Originating-IP: [172.19.116.181]
X-ClientProxiedBy: EX19D037UWB003.ant.amazon.com (10.13.138.115) To
EX19D001UWA001.ant.amazon.com (10.13.138.214)
X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3
X-CRM114-CacheID: sfid-20251017_020949_593187_04811A26
X-CRM114-Status: GOOD ( 10.89 )
X-Spam-Score: -9.6 (---------)
X-Spam-Report: Spam detection software,
running on the system "bombadil.infradead.org",
has NOT identified this incoming email as spam. The original
message has been attached to this so you can view it or label
similar future email. If you have any questions, see
the administrator of that system for details.
Content preview: From: David Laight <David.Laight@ACULAB.COM> [ Upstream
commit
867046cc7027703f60a46339ffde91a1970f2901 ] Allow (for example)
min(unsigned_var,
20).
Content analysis details: (-9.6 points, 5.0 required)
pts rule name description
---- ----------------------
--------------------------------------------------
-7.5 USER_IN_DEF_SPF_WL From: address is in the default SPF welcome-list
0.0 SPF_HELO_NONE SPF: HELO does not publish an SPF Record
-0.0 SPF_PASS SPF: sender matches SPF record
-0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from
author's
domain
-0.1 DKIM_VALID Message has at least one valid DKIM or DK
signature
-0.1 DKIM_VALID_EF Message has a valid DKIM or DK signature from
envelope-from domain
0.1 DKIM_SIGNED Message has a DKIM or DK signature,
not necessarily valid
-1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1%
[score: 0.0000]
0.0 RCVD_IN_VALIDITY_SAFE_BLOCKED RBL: ADMINISTRATOR NOTICE: The query to
Validity was blocked. See
https://knowledge.validity.com/hc/en-us/articles/20961730681243
for more information.
[35.83.148.184 listed in sa-accredit.habeas.com]
0.0 RCVD_IN_VALIDITY_CERTIFIED_BLOCKED RBL: ADMINISTRATOR NOTICE: The
query to Validity was blocked. See
https://knowledge.validity.com/hc/en-us/articles/20961730681243
for more information.
[35.83.148.184 listed in
sa-trusted.bondedsender.org]
0.0 UNPARSEABLE_RELAY Informational: message has unparseable relay
lines
-0.0 DKIMWL_WL_HIGH DKIMwl.org - High trust sender
0.0 RCVD_IN_VALIDITY_RPBL_BLOCKED RBL: ADMINISTRATOR NOTICE: The query to
Validity was blocked. See
https://knowledge.validity.com/hc/en-us/articles/20961730681243
for more information.
[35.83.148.184 listed in
bl.score.senderscore.com]
X-Mailman-Approved-At: Sat, 08 Nov 2025 08:31:10 -0800
X-BeenThere: linux-um@lists.infradead.org
X-Mailman-Version: 2.1.34
Precedence: list
List-Id: <linux-um.lists.infradead.org>
List-Unsubscribe: <http://lists.infradead.org/mailman/options/linux-um>,
<mailto:linux-um-request@lists.infradead.org?subject=unsubscribe>
List-Archive: <http://lists.infradead.org/pipermail/linux-um/>
List-Post: <mailto:linux-um@lists.infradead.org>
List-Help: <mailto:linux-um-request@lists.infradead.org?subject=help>
List-Subscribe: <http://lists.infradead.org/mailman/listinfo/linux-um>,
<mailto:linux-um-request@lists.infradead.org?subject=subscribe>
Sender: "linux-um" <linux-um-bounces@lists.infradead.org>
Errors-To: linux-um-bounces+incoming=patchwork.ozlabs.org@lists.infradead.org
|
| Series |
Backport minmax.h updates from v6.17-rc7
|
expand
|
diff --git a/include/linux/minmax.h b/include/linux/minmax.h index 842c1db62ffe..2ec559284a9f 100644 --- a/include/linux/minmax.h +++ b/include/linux/minmax.h @@ -10,13 +10,18 @@ /* * min()/max()/clamp() macros must accomplish three things: * - * - avoid multiple evaluations of the arguments (so side-effects like + * - Avoid multiple evaluations of the arguments (so side-effects like * "x++" happen only once) when non-constant. - * - perform signed v unsigned type-checking (to generate compile - * errors instead of nasty runtime surprises). - * - retain result as a constant expressions when called with only + * - Retain result as a constant expressions when called with only * constant expressions (to avoid tripping VLA warnings in stack * allocation usage). + * - Perform signed v unsigned type-checking (to generate compile + * errors instead of nasty runtime surprises). + * - Unsigned char/short are always promoted to signed int and can be + * compared against signed or unsigned arguments. + * - Unsigned arguments can be compared against non-negative signed constants. + * - Comparison of a signed argument against an unsigned constant fails + * even if the constant is below __INT_MAX__ and could be cast to int. */ #define __typecheck(x, y) \ (!!(sizeof((typeof(x) *)1 == (typeof(y) *)1))) @@ -26,9 +31,14 @@ __builtin_choose_expr(__is_constexpr(is_signed_type(typeof(x))), \ is_signed_type(typeof(x)), 0) -#define __types_ok(x, y) \ - (__is_signed(x) == __is_signed(y) || \ - __is_signed((x) + 0) == __is_signed((y) + 0)) +/* True for a non-negative signed int constant */ +#define __is_noneg_int(x) \ + (__builtin_choose_expr(__is_constexpr(x) && __is_signed(x), x, -1) >= 0) + +#define __types_ok(x, y) \ + (__is_signed(x) == __is_signed(y) || \ + __is_signed((x) + 0) == __is_signed((y) + 0) || \ + __is_noneg_int(x) || __is_noneg_int(y)) #define __cmp_op_min < #define __cmp_op_max >