[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20240716183333.138498-7-sj@kernel.org>
Date: Tue, 16 Jul 2024 11:33:31 -0700
From: SeongJae Park <sj@...nel.org>
To: stable@...r.kernel.org,
gregkh@...uxfoundation.org
Cc: David Laight <David.Laight@...LAB.COM>,
linux-kernel@...r.kernel.org,
David Laight <david.laight@...lab.com>,
Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
Christoph Hellwig <hch@...radead.org>,
"Jason A . Donenfeld" <Jason@...c4.com>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Matthew Wilcox <willy@...radead.org>,
Andrew Morton <akpm@...ux-foundation.org>,
SeongJae Park <sj@...nel.org>
Subject: [PATCH 5.15.y 6/8] minmax: allow comparisons of 'int' against 'unsigned char/short'
From: David Laight <David.Laight@...LAB.COM>
commit 4ead534fba42fc4fd41163297528d2aa731cd121 upstream.
Since 'unsigned char/short' get promoted to 'signed int' it is safe to
compare them against an 'int' value.
Link: https://lkml.kernel.org/r/8732ef5f809c47c28a7be47c938b28d4@AcuMS.aculab.com
Signed-off-by: David Laight <david.laight@...lab.com>
Cc: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
Cc: Christoph Hellwig <hch@...radead.org>
Cc: Jason A. Donenfeld <Jason@...c4.com>
Cc: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Matthew Wilcox (Oracle) <willy@...radead.org>
Signed-off-by: Andrew Morton <akpm@...ux-foundation.org>
(cherry picked from commit 4ead534fba42fc4fd41163297528d2aa731cd121)
Signed-off-by: SeongJae Park <sj@...nel.org>
---
include/linux/minmax.h | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/include/linux/minmax.h b/include/linux/minmax.h
index 501fab582d68..f76b7145fc11 100644
--- a/include/linux/minmax.h
+++ b/include/linux/minmax.h
@@ -25,8 +25,9 @@
__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))
+#define __types_ok(x, y) \
+ (__is_signed(x) == __is_signed(y) || \
+ __is_signed((x) + 0) == __is_signed((y) + 0))
#define __cmp_op_min <
#define __cmp_op_max >
--
2.39.2
Powered by blists - more mailing lists