Thread (7 messages) 7 messages, 3 authors, 10h ago

Re: test_bitmap fails on ppc/ppc64 on kernels v7.1.3, v7.2-rc2

From: Erhard Furtner <hidden>
Date: 2026-07-07 23:25:27
Also in: lkml

quoted
test_bitmap: loaded.
test_bitmap: [lib/test_bitmap.c:397] bitmaps contents differ: expected 
"1,3-4,9", got "1,3-4,9,65-71,73-79,81-87,89-95,97-99"
test_bitmap: parselist('0-2047:128/256'):    912
test_bitmap: scnprintf("%*pbl", '0-32767'):    5977
test_bitmap: test_bitmap_read_perf:        1191082
test_bitmap: test_bitmap_write_perf:        1270153
test_bitmap: failed 1 out of 208655 tests
On QEMU (pmac32_defconfig) I get:

test_bitmap: loaded.
test_bitmap: parselist('0-2047:128/256'):    2200
test_bitmap: scnprintf("%*pbl", '0-32767'):    26440
test_bitmap: test_bitmap_read_perf:        1819760
test_bitmap: test_bitmap_write_perf:        18189840
test_bitmap: all 208655 tests passed

On QEMU with your confirm I get:

[    1.162486] test_bitmap: loaded.
[    1.177069] test_bitmap: [lib/test_bitmap.c:397] bitmaps contents 
differ: expected "1,3-4,9", got "1,3-4,9,65-71,73-79,81-87,89-95,97-99"
[    1.180599] test_bitmap: parselist('0-2047:128/256'):    2920
[    1.190105] test_bitmap: scnprintf("%*pbl", '0-32767'):    65560
[    1.427378] test_bitmap: test_bitmap_read_perf:        9546321
[    1.438769] test_bitmap: test_bitmap_write_perf:        9344481
[    1.457679] test_bitmap: failed 1 out of 208655 tests

So there is something with your config
Interesting! As I get the same test failure on my Talos II too.

Anyhow, I was able to bisect the issue. Offending commit is:

  # git bisect bad
6b5a4b68736798df1031404a2fad06d031253ef7 is the first bad commit
commit 6b5a4b68736798df1031404a2fad06d031253ef7 (HEAD)
Author: Andy Shevchenko [off-list ref]
Date:   Thu Feb 26 12:16:44 2026 +0100

     bitmap: Add test for out-of-boundary modifications for scatter & gather

     Make sure that bitmap_scatter() and bitmap_gather() do not modify
     the bits outside of the given nbits span.

     Signed-off-by: Andy Shevchenko [off-list ref]
     Signed-off-by: Yury Norov [off-list ref]

  lib/test_bitmap.c | 10 +++++++---
  1 file changed, 7 insertions(+), 3 deletions(-)


Reverting this commit on top of v7.2-rc2 lets the test pass:

test_bitmap: loaded.
test_bitmap: parselist('0-2047:128/256'):	888
test_bitmap: scnprintf("%*pbl", '0-32767'):	6074
test_bitmap: test_bitmap_read_perf:		1190938
test_bitmap: test_bitmap_write_perf:		1259471
test_bitmap: all 208655 tests passed

Your hint about my config made me check a few options and I found the 
offending one, which is INIT_STACK_ALL_PATTERN=y. On a kernel built with 
INIT_STACK_ALL_ZERO=y the issue does not show up.

Regards,
Erhard
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help