Re: [PATCH v3 0/2] lib/prime_numbers: convert self-test to KUnit

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, 08 Feb 2025 17:52:28 -0500 Tamir Duberstein <tamird@xxxxxxxxx> wrote:

> This is a clear example of a unit test.
> 
> I tested this using:
> 
> $ tools/testing/kunit/kunit.py run --arch arm64 --make_options LLVM=1 math-prime_numbers
> 
> On success:
> ; [08:51:41] ============== math-prime_numbers (1 subtest) ==============
> ; [08:51:41] [PASSED] prime_numbers_test
> ; [08:51:41] =============== [PASSED] math-prime_numbers ================
> ; [08:51:41] ============================================================
> ; [08:51:41] Testing complete. Ran 1 tests: passed: 1
> 
> On failure:
> ; [08:50:19] ============== math-prime_numbers (1 subtest) ==============
> ; [08:50:19]     # prime_numbers_test: ASSERTION FAILED at lib/math/tests/prime_numbers_kunit.c:28
> ; [08:50:19]     Expected slow == fast, but
> ; [08:50:19]         slow == 0 (0x0)
> ; [08:50:19]         fast == 1 (0x1)
> ; [08:50:19] is-prime(2)
> ; [08:50:19] [FAILED] prime_numbers_test
> ; [08:50:19] # module: prime_numbers_kunit
> ; [08:50:19] # math-prime_numbers: primes.{last=61, .sz=64, .primes[]=...x28208a20a08a28ac} = 2-3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61
> ; [08:50:19] =============== [FAILED] math-prime_numbers ================
> ; [08:50:19] ============================================================
> ; [08:50:19] Testing complete. Ran 1 tests: failed: 1
> 

I resolved this against "lib/math: add Kunit test suite for gcd()"
(https://lkml.kernel.org/r/20250203075400.3431330-1-eleanor15x@xxxxxxxxx)
in the obvious fashion then added this fixup:

From: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
Subject: lib-math-hook-up-tests-makefile-fix
Date: Sat Feb  8 03:33:59 PM PST 2025

don't link gcd_kunit.o twice

Cc: David Gow <davidgow@xxxxxxxxxx>
Cc: Tamir Duberstein <tamird@xxxxxxxxx>
Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
---

 lib/math/Makefile |    1 -
 1 file changed, 1 deletion(-)

--- a/lib/math/Makefile~lib-math-hook-up-tests-makefile-fix
+++ a/lib/math/Makefile
@@ -8,5 +8,4 @@ obj-$(CONFIG_RATIONAL)		+= rational.o
 obj-$(CONFIG_TEST_DIV64)	+= test_div64.o
 obj-$(CONFIG_TEST_MULDIV64)	+= test_mul_u64_u64_div_u64.o
 obj-$(CONFIG_RATIONAL_KUNIT_TEST) += rational-test.o
-obj-$(CONFIG_GCD_KUNIT_TEST) += tests/gcd_kunit.o
 obj-y += tests/
_

and the x86_64 allmodconfig build failed thusly:

lib/math/tests/prime_numbers_kunit.c: In function 'prime_numbers_test':
lib/math/tests/prime_numbers_kunit.c:25:35: error: implicit declaration of function 'slow_is_prime_number'; did you mean 'is_prime_number'? [-Werror=implicit-function-declaration]
   25 |                 const bool slow = slow_is_prime_number(x);
      |                                   ^~~~~~~~~~~~~~~~~~~~
      |                                   is_prime_number


So, please redo against mm.git's mm-everything branch or its
mm-nonmm-unstable branch and retest carefully.





[Index of Archives]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Share Photos]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux