bitmap-for-6.17
Bits-related patched for 6.17: - find_random_bit() series (Yury); - GENMASK() consolidation (Vincent); - random cleanups (Shaopeng, Ben, Yury) -----BEGIN PGP SIGNATURE----- iQGzBAABCgAdFiEEi8GdvG6xMhdgpu/4sUSA/TofvsgFAmiLkz0ACgkQsUSA/Tof vsj7MgwAvRSyevYSm9cm1Y99098M/7gWeJUeLAIy0GJdFaBQIcMkXkRGXJ9A0ZHb RoCFG4eiukHIDHRzJjncXUNTk0zVCbEifUF43BdnJrhjTePlou5SNVh6xhJfQ1Ai ENB4Q+nAZyIm43cUnoDhR24ne3pgJcY+oe6e7sQTRFF/6+nB4RDHmjIAMVsYgH30 w8iPBxNXXULAZNDgOPA3J5bACEnZPfOAhtoiNBC9s4MsE4o+Q8E9FVhReI2tiIhk t98kVZu7TFyrGcCdLz8EgbcG4KPFBmwOwOv8S1Mzgy46MwS//dd7MZA7y3MqTvJ/ VEMoTMAK14/VrgDxu/vdBsUJt/T1wPc+ZbUt/rNb530oSDkvjIo+4ihg1nfswqhn u+fj65wAHRW7CSkgpHn3bM/wvxmtIaE6AoY6jWwyuZ1zGIEV+5iPBo56kkmpJlYj GlnbiTHkNR/jGa1GwB3PDG2kzoqXVLz6EeFdZncUX53MGa90g0+5/k0ld+oBJTDh 7QbkZlW1 =uj9U -----END PGP SIGNATURE----- Merge tag 'bitmap-for-6.17' of https://github.com/norov/linux Pull bitmap updates from Yury Norov: - find_random_bit() series (Yury) - GENMASK() consolidation (Vincent) - random cleanups (Shaopeng, Ben, Yury) * tag 'bitmap-for-6.17' of https://github.com/norov/linux: bitfield: Ensure the return values of helper functions are checked test_bits: add tests for __GENMASK() and __GENMASK_ULL() bits: unify the non-asm GENMASK*() bits: split the definition of the asm and non-asm GENMASK*() cpumask: Remove unnecessary cpumask_nth_andnot() watchdog: fix opencoded cpumask_next_wrap() in watchdog_next_cpu() clocksource: Improve randomness in clocksource_verify_choose_cpus() cpumask: introduce cpumask_random() bitmap: generalize node_random()
This commit is contained in:
commit
f2d282e1df
9 changed files with 72 additions and 93 deletions
|
|
@ -26,6 +26,23 @@ static_assert(assert_type(u16, GENMASK_U16(15, 0)) == U16_MAX);
|
|||
static_assert(assert_type(u32, GENMASK_U32(31, 0)) == U32_MAX);
|
||||
static_assert(assert_type(u64, GENMASK_U64(63, 0)) == U64_MAX);
|
||||
|
||||
/* FIXME: add a test case written in asm for GENMASK() and GENMASK_ULL() */
|
||||
|
||||
static void __genmask_test(struct kunit *test)
|
||||
{
|
||||
KUNIT_EXPECT_EQ(test, 1ul, __GENMASK(0, 0));
|
||||
KUNIT_EXPECT_EQ(test, 3ul, __GENMASK(1, 0));
|
||||
KUNIT_EXPECT_EQ(test, 6ul, __GENMASK(2, 1));
|
||||
KUNIT_EXPECT_EQ(test, 0xFFFFFFFFul, __GENMASK(31, 0));
|
||||
}
|
||||
|
||||
static void __genmask_ull_test(struct kunit *test)
|
||||
{
|
||||
KUNIT_EXPECT_EQ(test, 1ull, __GENMASK_ULL(0, 0));
|
||||
KUNIT_EXPECT_EQ(test, 3ull, __GENMASK_ULL(1, 0));
|
||||
KUNIT_EXPECT_EQ(test, 0x000000ffffe00000ull, __GENMASK_ULL(39, 21));
|
||||
KUNIT_EXPECT_EQ(test, 0xffffffffffffffffull, __GENMASK_ULL(63, 0));
|
||||
}
|
||||
|
||||
static void genmask_test(struct kunit *test)
|
||||
{
|
||||
|
|
@ -123,6 +140,8 @@ static void genmask_input_check_test(struct kunit *test)
|
|||
|
||||
|
||||
static struct kunit_case bits_test_cases[] = {
|
||||
KUNIT_CASE(__genmask_test),
|
||||
KUNIT_CASE(__genmask_ull_test),
|
||||
KUNIT_CASE(genmask_test),
|
||||
KUNIT_CASE(genmask_ull_test),
|
||||
KUNIT_CASE(genmask_u128_test),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue