From 29c4268764f00568754494c2ede49c7963947012 Mon Sep 17 00:00:00 2001 From: Vitaly Chikunov Date: Sat, 11 Mar 2023 12:16:44 +0300 Subject: [PATCH] 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. Fixes: b259a2b ("tests: add fsverity measurement test") Signed-off-by: Vitaly Chikunov Tested-by: Nageswara R Sastry Signed-off-by: Mimi Zohar --- tests/fsverity.test | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tests/fsverity.test b/tests/fsverity.test index a274158..e1e0c8d 100755 --- a/tests/fsverity.test +++ b/tests/fsverity.test @@ -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