Fix fsverity.test mount failure for ppc64
PATCH 1/1 Fix fsverity.test mount failure for ppc64
fsverity requires fs blocksize to be equal to pagesoze, which is different on ppc64 (64K). Default mkfs blocksize if 4K. This difference causes mount failure and following error message:
INFO: Mounting loopback filesystem
mount: /tmp/fsverity-test: wrong fs type, bad option, bad superblock on /dev/loop0, missing codepage or helper program, or other error.
dmesg(1) may have more information after failed mount system call.
FAILURE: mounting loopback filesystem
It's said this limitation is removed in Linux v6.3, but for backward compatibility better to leave workaround for it.
--- tests/fsverity.test | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)
tests/fsverity.test +4 -1
@@ -120,6 +120,9 @@ create_loopback_file() { case $fs_type in ext4|f2fs) options="-O verity" + # verity requires blocksize to be equal to pagesize. + pagesize=$(getconf PAGE_SIZE) + [ "$pagesize" -eq 4096 ] || options+=" -b $pagesize" ;; btrfs) ;;
@@ -136,7 +139,7 @@ create_loopback_file() { fi echo "INFO: Building an $fs_type filesystem" - if ! mkfs -t "$fs_type" -q "${TST_IMG}" "$options"; then + if ! mkfs -t "$fs_type" -q "${TST_IMG}" $options; then echo "${RED}FAILURE: Creating $fs_type filesystem${NORM}" exit "$FAIL" fi
Signature · 1 line
2.33.7
Quoted 9 lines · Vitaly Chikunov
fsverity requires fs blocksize to be equal to pagesoze, which is different on ppc64 (64K). Default mkfs blocksize if 4K. This difference causes mount failure and following error message:
INFO: Mounting loopback filesystem
mount:/tmp/fsverity-test: wrong fs type, bad option, bad superblock on/dev/loop0, missing codepage or helper program, or other error.
dmesg(1) may have more information after failed mount system call.
FAILURE: mounting loopback filesystem
Quoted 5 lines
It's said this limitation is removed in Linux v6.3, but for backward compatibility better to leave workaround for it.
Fixes b259a2b ("tests: add fsverity measurement test")Signed-off-by Vitaly Chikunov <[email protected]>
Tested on Power10, PowerVM:
1. Kernel version: 6.3-rc6
with or with out this patch the fsverity.test result is same ie:
PASS: 6 SKIP: 0 FAIL: 0
2. Kernel version: 6.2.6
with out patch:
seen the reported error ie
mount: /tmp/fsverity-test: wrong fs type, bad option, bad superblock on /dev/loop0, missing codepage or helper program, or other error.
FAILURE: mounting loopback filesystem
with patch:
PASS: 4 SKIP: 2 FAIL: 0
Quoted 27 lines
--- tests/fsverity.test | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-)tests/fsverity.test +4
-1@@ -120,6 +120,9 @@ create_loopback_file() { case $fs_type in ext4|f2fs) options="-O verity" + # verity requires blocksize to be equal to pagesize. + pagesize=$(getconf PAGE_SIZE) + [ "$pagesize" -eq 4096 ] || options+=" -b $pagesize" ;; btrfs) ;;@@ -136,7 +139,7 @@ create_loopback_file() { fi echo "INFO: Building an $fs_type filesystem" - if ! mkfs -t "$fs_type" -q "${TST_IMG}" "$options"; then + if ! mkfs -t "$fs_type" -q "${TST_IMG}" $options; then echo "${RED}FAILURE: Creating $fs_type filesystem${NORM}" exit "$FAIL" fi
Signature · 2 lines
Thanks and Regards R.Nageswara Sastry
Mimi Zohar
maintainerQuoted 9 lines · Vitaly Chikunov
fsverity requires fs blocksize to be equal to pagesoze, which is different on ppc64 (64K). Default mkfs blocksize if 4K. This difference causes mount failure and following error message:
INFO: Mounting loopback filesystem
mount:/tmp/fsverity-test: wrong fs type, bad option, bad superblock on/dev/loop0, missing codepage or helper program, or other error.
dmesg(1) may have more information after failed mount system call.
FAILURE: mounting loopback filesystem
Quoted 5 lines
It's said this limitation is removed in Linux v6.3, but for backward compatibility better to leave workaround for it.
Fixes b259a2b ("tests: add fsverity measurement test")Signed-off-by Vitaly Chikunov <[email protected]>
Thanks, Vitaly. The patch is now queued in next-testing.
Signature · 1 line
Mimi