From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pdx-out-013.esa.us-west-2.outbound.mail-perimeter.amazon.com (pdx-out-013.esa.us-west-2.outbound.mail-perimeter.amazon.com [34.218.115.239]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 9CEC5261B80; Fri, 17 Oct 2025 09:05:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=34.218.115.239 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1760691947; cv=none; b=QiezCN9eMXYHHodHPwHw3iv5KUKaJUemLZg31BEBC6b4txA81PSL3xGzpTsTDdo4LUguVw1ow+DLbh6mdU0wtKmxUwIo2FPSYL7QLpKlF3HkwJv6ndRNRzG0q3ZU8WdnWv3EodEpCNBtNsJf1hR3GFGwgvAojAcgNScTeEIz7wc= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1760691947; c=relaxed/simple; bh=r3aRMRxLlDgna5pGqlhOhcl+QTURmPg1ODwkm06HnuM=; h=From:To:Subject:Date:Message-ID:MIME-Version:Content-Type; b=p5ZTzNV2vzqKM3Qikzrwkfl6qrnZxCqGLoPYaG1dwfcup9zYv49X6y1YvAv+oMoyJ1kcKay6IbHReabO8//2O8TT93eZlZAQk8pnFAtS8Klkied78PrdPLenlGp4vp1i+BvjzxN+r5Hdab2mYJOqdMI5uBjfgDZMSIcyHmb+G2g= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amazon.com; spf=pass smtp.mailfrom=amazon.com; dkim=pass (2048-bit key) header.d=amazon.com header.i=@amazon.com header.b=YeoKGb0+; arc=none smtp.client-ip=34.218.115.239 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=amazon.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=amazon.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=amazon.com header.i=@amazon.com header.b="YeoKGb0+" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amazon.com; i=@amazon.com; q=dns/txt; s=amazoncorp2; t=1760691945; x=1792227945; h=from:to:subject:date:message-id:mime-version: content-transfer-encoding; bh=zbj2mTisKzioKQVYABevmwS3PD+KbTl4NbCfwfEx+Qc=; b=YeoKGb0+qJP5B0jO5lJJH8XRqTdaxrB6Ec1OHVG7a1haV591Fp+K0stX iCqnhMnfg3xO5m6m1GgiOjA7O8806xJ03yQ2+iHMGziLAMD+YdJAXr/8I e89rcOVcnFhibwwLMcJtej4wfXkr3xZ2v3DrLmk9xQNK0L1jvotcDCUBP 5EYbcQcXP8OGMXkaGRESociN9UJ0dxXB5W+rjNO9jtkMN5jAMfIXaknE6 2GVX7ECXL0H2PpVUwDiSEypmI3dxCNJxnWZ0sGe+Fx7QzzqOXAujY9WZY xpgBXTWOJbRCd3+s4IDoJ4+1hcjz7xfcmRqFIceGzHgcj69FavSyY8jjd w==; X-CSE-ConnectionGUID: r6Bg9Du6S1OIcsGc5tRu+Q== X-CSE-MsgGUID: RfhnESv6RwG1ZmzF97qNew== X-IronPort-AV: E=Sophos;i="6.19,236,1754956800"; d="scan'208";a="4884236" Received: from ip-10-5-0-115.us-west-2.compute.internal (HELO smtpout.naws.us-west-2.prod.farcaster.email.amazon.dev) ([10.5.0.115]) by internal-pdx-out-013.esa.us-west-2.outbound.mail-perimeter.amazon.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Oct 2025 09:05:43 +0000 Received: from EX19MTAUWB002.ant.amazon.com [205.251.233.111:17609] by smtpin.naws.us-west-2.prod.farcaster.email.amazon.dev [10.0.8.44:2525] with esmtp (Farcaster) id 48bd48bb-d4c8-4418-898a-1915d00032a2; Fri, 17 Oct 2025 09:05:43 +0000 (UTC) X-Farcaster-Flow-ID: 48bd48bb-d4c8-4418-898a-1915d00032a2 Received: from EX19D001UWA001.ant.amazon.com (10.13.138.214) by EX19MTAUWB002.ant.amazon.com (10.250.64.231) 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:05:38 +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:05:23 +0000 From: Eliav Farber To: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Subject: [PATCH v2 00/27 5.10.y] Backport minmax.h updates from v6.17-rc7 Date: Fri, 17 Oct 2025 09:04:52 +0000 Message-ID: <20251017090519.46992-1-farbere@amazon.com> X-Mailer: git-send-email 2.47.3 Precedence: bulk X-Mailing-List: stable@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: EX19D045UWA003.ant.amazon.com (10.13.139.46) To EX19D001UWA001.ant.amazon.com (10.13.138.214) This series backports 27 patches to update minmax.h in the 5.10.y branch, aligning it with v6.17-rc7. The ultimate goal is to synchronize all long-term branches so that they include the full set of minmax.h changes. - 6.12.y has already been backported; the changes are included in v6.12.49. - 6.6.y has already been backported; the changes are included in v6.6.109. - 6.1.y has already been backported; the changes are currently in the 6.1-stable tree. - 5.15.y has already been backported; the changes are currently in the 5.15-stable tree. The key motivation is to bring in commit d03eba99f5bf ("minmax: allow min()/max()/clamp() if the arguments have the same signedness"), which is missing in kernel 5.10.y. In mainline, this change enables min()/max()/clamp() to accept mixed argument types, provided both have the same signedness. Without it, backported patches that use these forms may trigger compiler warnings, which escalate to build failures when -Werror is enabled. The first two patches in this series were added to prevent build failures caused by changes introduced later in minmax.h. - Commit 92d23c6e9415 ("overflow, tracing: Define the is_signed_type() macro once") is needed for commit 75ca38c1960f ("minmax: allow min()/max()/clamp()"). - Commit cea628008fc8 ("btrfs: remove duplicated in_range() macro") is needed for commit f9bff0e31881 ("minmax: add in_range() macro"). The changes were tested using `make allyesconfig` and `make allmodconfig` for arm64, arm, x86_64 and i386 architectures. Changes in v2: The series was updated after initially backporting and approving the newer long-term branches. Andy Shevchenko (2): minmax: deduplicate __unconst_integer_typeof() minmax: fix header inclusions Bart Van Assche (1): overflow, tracing: Define the is_signed_type() macro once David Laight (11): minmax: allow min()/max()/clamp() if the arguments have the same signedness. minmax: fix indentation of __cmp_once() and __clamp_once() minmax: allow comparisons of 'int' against 'unsigned char/short' minmax: relax check to allow comparison between unsigned arguments and signed constants minmax.h: add whitespace around operators and after commas minmax.h: update some comments minmax.h: reduce the #define expansion of min(), max() and clamp() minmax.h: use BUILD_BUG_ON_MSG() for the lo < hi test in clamp() minmax.h: move all the clamp() definitions after the min/max() ones minmax.h: simplify the variants of clamp() minmax.h: remove some #defines that are only expanded once Herve Codina (1): minmax: Introduce {min,max}_array() Jason A. Donenfeld (2): minmax: sanity check constant bounds when clamping minmax: clamp more efficiently by avoiding extra comparison Johannes Thumshirn (1): btrfs: remove duplicated in_range() macro Linus Torvalds (8): minmax: avoid overly complicated constant expressions in VM code minmax: add a few more MIN_T/MAX_T users minmax: simplify and clarify min_t()/max_t() implementation minmax: make generic MIN() and MAX() macros available everywhere minmax: don't use max() in situations that want a C constant expression minmax: simplify min()/max()/clamp() implementation minmax: improve macro expansion and type checking minmax: fix up min3() and max3() too Matthew Wilcox (Oracle) (1): minmax: add in_range() macro arch/arm/mm/pageattr.c | 6 +- arch/um/drivers/mconsole_user.c | 2 + arch/x86/mm/pgtable.c | 2 +- drivers/edac/sb_edac.c | 4 +- drivers/edac/skx_common.h | 1 - .../drm/amd/display/modules/hdcp/hdcp_ddc.c | 2 + .../drm/amd/pm/powerplay/hwmgr/ppevvmath.h | 14 +- .../drm/arm/display/include/malidp_utils.h | 2 +- .../display/komeda/komeda_pipeline_state.c | 24 +- drivers/gpu/drm/drm_color_mgmt.c | 2 +- drivers/gpu/drm/msm/adreno/a6xx_gmu.c | 6 - drivers/gpu/drm/radeon/evergreen_cs.c | 2 + drivers/hwmon/adt7475.c | 24 +- drivers/input/touchscreen/cyttsp4_core.c | 2 +- drivers/md/dm-integrity.c | 6 +- drivers/media/dvb-frontends/stv0367_priv.h | 3 + .../net/ethernet/chelsio/cxgb3/cxgb3_main.c | 18 +- .../net/ethernet/stmicro/stmmac/stmmac_main.c | 2 +- drivers/net/fjes/fjes_main.c | 4 +- drivers/nfc/pn544/i2c.c | 2 - drivers/platform/x86/sony-laptop.c | 1 - drivers/scsi/isci/init.c | 6 +- .../pci/hive_isp_css_include/math_support.h | 5 - fs/btrfs/ctree.h | 2 - fs/btrfs/extent_io.c | 1 + fs/btrfs/file-item.c | 1 + fs/btrfs/misc.h | 2 - fs/btrfs/raid56.c | 1 + fs/btrfs/tree-checker.c | 2 +- fs/erofs/zdata.h | 2 +- fs/ext2/balloc.c | 2 - fs/ext4/ext4.h | 2 - fs/ufs/util.h | 6 - include/linux/compiler.h | 15 + include/linux/minmax.h | 267 ++++++++++++++---- include/linux/overflow.h | 1 - include/linux/trace_events.h | 2 - kernel/trace/preemptirq_delay_test.c | 2 - lib/btree.c | 1 - lib/decompress_unlzma.c | 2 + lib/logic_pio.c | 3 - lib/vsprintf.c | 2 +- lib/zstd/zstd_internal.h | 2 - mm/zsmalloc.c | 1 - net/ipv4/proc.c | 2 +- net/ipv6/proc.c | 2 +- net/netfilter/nf_nat_core.c | 6 +- net/tipc/core.h | 2 +- net/tipc/link.c | 10 +- 49 files changed, 312 insertions(+), 169 deletions(-) -- 2.47.3