Comment 74 for bug 2044657

Revision history for this message
trackwitz (trackwitz) wrote :

Verification done for jammy-proposed.

TEST CASE:
I did test the -proposed package on a clean install of jammy (without the HWE kernel) and a test pool.

Since you need a tool that uses lseek SEEK_HOLE/SEEK_DATA and the coreutils bundled with Ubuntu 22.04 are still at version 8.x, I manually downloaded the tarball of coreutils 9.1 from https://www.gnu.org/software/coreutils/ and installed the newly compiled version of "cp" that is used by the zhammer script.

test@zfstest:/test$ cp --version
cp (GNU coreutils) 9.1

Then I used the zhammer.sh script linked in #16 to test for data corruption:
test@zfstest:~$ sudo parallel --lb --halt-on-error now,fail=1 ./zhammer.sh /test 10000000 16k 10000 ::: $(seq $(nproc))

...
As expected on an unpatched system I immediately got the error on the first run:

[zhammer::765410] zhammer_765410_0 differed from zhammer_765410_5930!
[zhammer::765410] Hexdump diff follows
--- zhammer_765410_0.hex 2024-02-15 15:27:22.370732491 +0000
+++ zhammer_765410_5930.hex 2024-02-15 15:27:22.370732491 +0000
@@ -1,3 +1,3 @@
-00000000 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................|
+00000000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |................|
 *
 00004000
[zhammer::765410] Uname: Linux zfstest 5.15.0-94-generic #104-Ubuntu SMP Tue Jan 9 15:25:40 UTC 2024 x86_64 GNU/Linux
[zhammer::765410] ZFS userspace: zfs-2.1.5-1ubuntu6~22.04.2
[zhammer::765410] ZFS kernel: zfs-kmod-2.1.5-1ubuntu6~22.04.2
[zhammer::765410] Module: /lib/modules/5.15.0-94-generic/kernel/zfs/zfs.ko
[zhammer::765410] Srcversion: 5A94B4662A7A991696CC35F
[zhammer::765410] SHA256: d83e630d4e46280ba6b8bf922850899318ebd24dedd14ab5672574c4bd811ffc
[zhammer::765391] checking 10000 files at iteration 0
parallel: This job failed: ./zhammer.sh /test 10000000 16k 10000 5

...
Then I enabled the -proposed repository, installed the patched zfs-version and enabled the dkms kernel module for zfs.
After a reboot I re-ran the zhammer.sh and it didn't trigger the bug any more after 5 iterations (x10.000 files).

[zhammer::4265] Uname: Linux zfstest 5.15.0-94-generic #104-Ubuntu SMP Tue Jan 9 15:25:40 UTC 2024 x86_64 GNU/Linux
[zhammer::4265] ZFS userspace: zfs-2.1.5-1ubuntu6~22.04.3
[zhammer::4265] ZFS kernel: zfs-kmod-2.1.5-1ubuntu6~22.04.3
[zhammer::4265] Module: /lib/modules/5.15.0-94-generic/updates/dkms/zfs.ko
[zhammer::4265] Srcversion: 9CA2EC22B1B594D0C432666
[zhammer::4265] SHA256: f78e84e7f995c15b715f6010ec939ca4202a73654bfafd24572d214ebfcb6364
[zhammer::4265] Work dir: /test
[zhammer::4265] Count: 10000000 files
[zhammer::4265] Block size: 16k
[zhammer::4265] Check every: 10000 files
[zhammer::4265] writing 10000 files at iteration 0
[...]
[zhammer::4253] writing 10000 files at iteration 40000
[zhammer::4248] writing 10000 files at iteration 40000
[zhammer::4246] writing 10000 files at iteration 40000
[zhammer::4256] writing 10000 files at iteration 40000
[zhammer::4252] writing 10000 files at iteration 40000
[zhammer::4280] writing 10000 files at iteration 40000
[zhammer::4271] writing 10000 files at iteration 40000
[zhammer::4265] writing 10000 files at iteration 40000
[zhammer::4246] checking 10000 files at iteration 40000
[zhammer::4253] checking 10000 files at iteration 40000
[zhammer::4265] checking 10000 files at iteration 40000
[zhammer::4248] checking 10000 files at iteration 40000
[zhammer::4252] checking 10000 files at iteration 40000
[zhammer::4280] checking 10000 files at iteration 40000
[zhammer::4256] checking 10000 files at iteration 40000
[zhammer::4271] checking 10000 files at iteration 40000

...

Therefore I can report that the proposed fix is also working for jammy.

P.S.: I am not sure if I am supposed to change the verification-tag, but since there seems to be very little other activity here and the fix for jammy is still not released I just went ahead. Hopefully this helps to get the fix released in less then (already humiliating) three months.