* [merged] lib-test_bitsc-add-tests-for-genmask_u128.patch removed from -mm tree
@ 2024-08-06 21:00 Andrew Morton
0 siblings, 0 replies; only message in thread
From: Andrew Morton @ 2024-08-06 21:00 UTC (permalink / raw)
To: mm-commits, yury.norov, linux, arnd, anshuman.khandual, akpm
The quilt patch titled
Subject: lib/test_bits.c: add tests for GENMASK_U128()
has been removed from the -mm tree. Its filename was
lib-test_bitsc-add-tests-for-genmask_u128.patch
This patch was dropped because it was merged into mainline or a subsystem tree
------------------------------------------------------
From: Anshuman Khandual <anshuman.khandual@arm.com>
Subject: lib/test_bits.c: add tests for GENMASK_U128()
Date: Thu, 25 Jul 2024 11:18:08 +0530
This adds GENMASK_U128() tests although currently only 64 bit wide masks
are being tested.
Link: https://lkml.kernel.org/r/20240725054808.286708-3-anshuman.khandual@arm.com
Signed-off-by: Anshuman Khandual <anshuman.khandual@arm.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Rasmus Villemoes <linux@rasmusvillemoes.dk>
Cc: Yury Norov <yury.norov@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---
lib/test_bits.c | 25 +++++++++++++++++++++++++
1 file changed, 25 insertions(+)
--- a/lib/test_bits.c~lib-test_bitsc-add-tests-for-genmask_u128
+++ a/lib/test_bits.c
@@ -39,6 +39,26 @@ static void genmask_ull_test(struct kuni
#endif
}
+#ifdef CONFIG_ARCH_SUPPORTS_INT128
+static void genmask_u128_test(struct kunit *test)
+{
+ /* Tests mask generation only when the mask width is within 64 bits */
+ KUNIT_EXPECT_EQ(test, 0x0000000000ff0000ULL, GENMASK_U128(87, 80) >> 64);
+ KUNIT_EXPECT_EQ(test, 0x0000000000ffffffULL, GENMASK_U128(87, 64) >> 64);
+ KUNIT_EXPECT_EQ(test, 0x0000000000000001ULL, GENMASK_U128(0, 0));
+ KUNIT_EXPECT_EQ(test, 0xffffffffffffffffULL, GENMASK_U128(63, 0));
+ KUNIT_EXPECT_EQ(test, 0xffffffffffffffffULL, GENMASK_U128(64, 0) >> 1);
+ KUNIT_EXPECT_EQ(test, 0x00000000ffffffffULL, GENMASK_U128(81, 50) >> 50);
+
+#ifdef TEST_GENMASK_FAILURES
+ /* these should fail compilation */
+ GENMASK_U128(0, 1);
+ GENMASK_U128(0, 10);
+ GENMASK_U128(9, 10);
+#endif
+}
+#endif
+
static void genmask_input_check_test(struct kunit *test)
{
unsigned int x, y;
@@ -56,12 +76,17 @@ static void genmask_input_check_test(str
/* Valid input */
KUNIT_EXPECT_EQ(test, 0, GENMASK_INPUT_CHECK(1, 1));
KUNIT_EXPECT_EQ(test, 0, GENMASK_INPUT_CHECK(39, 21));
+ KUNIT_EXPECT_EQ(test, 0, GENMASK_INPUT_CHECK(100, 80));
+ KUNIT_EXPECT_EQ(test, 0, GENMASK_INPUT_CHECK(110, 65));
}
static struct kunit_case bits_test_cases[] = {
KUNIT_CASE(genmask_test),
KUNIT_CASE(genmask_ull_test),
+#ifdef CONFIG_ARCH_SUPPORTS_INT128
+ KUNIT_CASE(genmask_u128_test),
+#endif
KUNIT_CASE(genmask_input_check_test),
{}
};
_
Patches currently in -mm which might be from anshuman.khandual@arm.com are
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2024-08-06 21:00 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-08-06 21:00 [merged] lib-test_bitsc-add-tests-for-genmask_u128.patch removed from -mm tree Andrew Morton
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.