[问题描述]: xfstests测试套ext4-2-bigalloc执行ext4/059测试项FAIL [root@iZbp143ti4ccpaufkzata7Z xfstests]# ./check tests/ext4/059 FSTYP -- ext4 PLATFORM -- Linux/aarch64 iZbp143ti4ccpaufkzata7Z 6.6.25-2_rc1.an23.aarch64 #1 SMP PREEMPT_DYNAMIC Thu Apr 11 15:02:38 CST 2024 MKFS_OPTIONS -- -F /dev/nvme1n1p2 MOUNT_OPTIONS -- -o acl,user_xattr -o context=system_u:object_r:root_t:s0 /dev/nvme1n1p2 /fs/nvme1n1p2 ext4/059 [failed, exit status 1]- output mismatch (see /root/tone/run/xfstests/results//ext4/059.out.bad) --- tests/ext4/059.out 2024-04-19 15:32:06.727614965 +0800 +++ /root/tone/run/xfstests/results//ext4/059.out.bad 2024-05-08 15:55:55.144494835 +0800 @@ -1,2 +1,6 @@ QA output created by 059 Reserved GDT blocks: 100 +mount: /fs/nvme1n1p2: mount(2) system call failed: Structure needs cleaning. + dmesg(1) may have more information after failed mount system call. +mount -o acl,user_xattr -o context=system_u:object_r:root_t:s0 /dev/nvme1n1p2 /fs/nvme1n1p2 failed +(see /root/tone/run/xfstests/results//ext4/059.full for details) ... (Run 'diff -u /root/tone/run/xfstests/tests/ext4/059.out /root/tone/run/xfstests/results//ext4/059.out.bad' to see the entire diff) HINT: You _MAY_ be missing kernel fix: b55c3cd102a6 ext4: add reserved GDT blocks check Ran: ext4/059 Failures: ext4/059 Failed 1 of 1 tests [root@iZbp143ti4ccpaufkzata7Z xfstests]# cat /root/tone/run/xfstests/results//ext4/059.out.bad QA output created by 059 Reserved GDT blocks: 100 mount: /fs/nvme1n1p2: mount(2) system call failed: Structure needs cleaning. dmesg(1) may have more information after failed mount system call. mount -o acl,user_xattr -o context=system_u:object_r:root_t:s0 /dev/nvme1n1p2 /fs/nvme1n1p2 failed (see /root/tone/run/xfstests/results//ext4/059.full for details) dmesg日志: [1226454.994392] run fstests ext4/059 at 2024-05-08 15:55:54 [1226455.196777] EXT4-fs (nvme1n1p2): failed to initialize system zone (-117) [1226455.197509] EXT4-fs (nvme1n1p2): mount failed [1226455.210385] EXT4-fs (nvme1n1p1): unmounting filesystem 3d0c7f92-bfb1-4a1b-88a7-5ab0f875d11a. fsck命令执行情况: [root@iZbp143ti4ccpaufkzata7Z xfstests]# fsck /dev/nvme1n1p2 fsck from util-linux 2.38.1 e2fsck 1.47.0 (5-Feb-2023) ext2fs_check_desc: Corrupt group descriptor: bad block for block bitmap fsck.ext4: Group descriptors look bad... trying backup blocks... /dev/nvme1n1p2 was not cleanly unmounted, check forced. Pass 1: Checking inodes, blocks, and sizes Inode 17 is in use, but has dtime set. Fix<y>? /dev/nvme1n1p2: e2fsck canceled. /dev/nvme1n1p2: ***** FILE SYSTEM WAS MODIFIED ***** [环境信息]: 机器类型:ECS [内核信息]: [root@iZbp143ti4ccpaufkzata7Z xfstests]# uname -r 6.6.25-2_rc1.an23.aarch64 [操作系统信息]: [root@iZbp143ti4ccpaufkzata7Z xfstests]# cat /etc/os-release NAME="Anolis OS" VERSION="23" ID="anolis" VERSION_ID="23" PLATFORM_ID="platform:an23" PRETTY_NAME="Anolis OS 23" ANSI_COLOR="0;31" HOME_URL="https://openanolis.cn/" BUG_REPORT_URL="https://bugzilla.openanolis.cn/" [文件系统] [root@iZbp143ti4ccpaufkzata7Z xfstests]# df -Th Filesystem Type Size Used Avail Use% Mounted on devtmpfs devtmpfs 4.0M 0 4.0M 0% /dev tmpfs tmpfs 16G 0 16G 0% /dev/shm tmpfs tmpfs 6.1G 768K 6.1G 1% /run efivarfs efivarfs 256K 17K 240K 7% /sys/firmware/efi/efivars /dev/nvme0n1p2 xfs 40G 11G 30G 27% / tmpfs tmpfs 16G 0 16G 0% /tmp /dev/nvme0n1p1 vfat 500M 6.5M 494M 2% /boot/efi tmpfs tmpfs 3.1G 0 3.1G 0% /run/user/0 [问题发生概率]: 必现 [复现步骤]: 1、部署xfstests环境 2、部署测试环境 wipefs -a -f /dev/nvme1n1 wipefs -a -f /dev/nvme1n1 partprobe /dev/nvme1n1 parted -s /dev/nvme1n1 mklabel gpt mkpart primary 2048 20480 partprobe /dev/nvme1n1 parted -s /dev/nvme1n1 mkpart primary 20480 40960 mkfs -t ext4 -E lazy_itable_init=0,lazy_journal_init=0 -L OStest -q -F -O bigalloc -C 16k -q -F /dev/nvme1n1p2 mkfs -t ext4 -E lazy_itable_init=0,lazy_journal_init=0 -L OStest -q -F -O bigalloc -C 16k -q -F /dev/nvme1n1p1 mkdir -p /fs/nvme1n1p2 mkdir -p /fs/nvme1n1p1 mount /dev/nvme1n1p1 /fs/nvme1n1p1 mount /dev/nvme1n1p2 /fs/nvme1n1p2 export FSTYP=ext4 export TEST_DEV=/dev/nvme1n1p1 export SCRATCH_DEV=/dev/nvme1n1p2 export TEST_DIR=/fs/nvme1n1p1 export SCRATCH_MNT=/fs/nvme1n1p2 3、执行./check tests/ext4/059命令
https://bugzilla.openanolis.cn/show_bug.cgi?id=8946 从失败的日志上看,两者很相似。先看8946的解决情况
An23.1 6.6.25-2_rc1.an23.x86_64环境存在相同问题 ext4/059 [failed, exit status 1]- output mismatch (see /root/tone/run/xfstests/results//ext4/059.out.bad) --- tests/ext4/059.out 2024-05-07 14:36:11.219396958 +0800 +++ /root/tone/run/xfstests/results//ext4/059.out.bad 2024-05-07 19:59:41.059098742 +0800 @@ -1,2 +1,6 @@ QA output created by 059 Reserved GDT blocks: 100 +mount: /fs/nvme1n1p2: mount(2) system call failed: Structure needs cleaning. + dmesg(1) may have more information after failed mount system call. +mount -o acl,user_xattr -o context=system_u:object_r:root_t:s0 /dev/nvme1n1p2 /fs/nvme1n1p2 failed +(see /root/tone/run/xfstests/results//ext4/059.full for details) ... (Run 'diff -u /root/tone/run/xfstests/tests/ext4/059.out /root/tone/run/xfstests/results//ext4/059.out.bad' to see the entire diff) HINT: You _MAY_ be missing kernel fix: b55c3cd102a6 ext4: add reserved GDT blocks check
alinux3 6.6.71-3_rc1.al8.aarch64环境存在相同的问题 ext4/059 [failed, exit status 1]- output mismatch (see /var/tmp/tone/run/xfstests/results//ext4/059.out.bad) --- tests/ext4/059.out 2025-03-04 13:43:29.689884632 +0800 +++ /var/tmp/tone/run/xfstests/results//ext4/059.out.bad 2025-03-04 15:24:54.394199883 +0800 @@ -1,2 +1,5 @@ QA output created by 059 Reserved GDT blocks: 100 +mount: /fs/nvme0n1p2: mount(2) system call failed: Structure needs cleaning. +mount -o acl,user_xattr /dev/nvme0n1p2 /fs/nvme0n1p2 failed +(see /var/tmp/tone/run/xfstests/results//ext4/059.full for details) ... (Run 'diff -u /var/tmp/tone/run/xfstests/tests/ext4/059.out /var/tmp/tone/run/xfstests/results//ext4/059.out.bad' to see the entire diff) HINT: You _MAY_ be missing kernel fix: b55c3cd102a6 ext4: add reserved GDT blocks check Ran: ext4/059 Failures: ext4/059 Failed 1 of 1 tests [tone]Error: The return code of run() in run.sh is not 0 ext4/059: Fail Test running: Done #cat /etc/os-release NAME="Alibaba Cloud Linux" VERSION="3 (Soaring Falcon)" ID="alinux" ID_LIKE="rhel fedora centos anolis" VERSION_ID="3" UPDATE_ID="10" PLATFORM_ID="platform:al8" PRETTY_NAME="Alibaba Cloud Linux 3 (Soaring Falcon)" ANSI_COLOR="0;31" HOME_URL="https://www.aliyun.com/" #uname -r 6.6.71-3_rc1.al8.aarch64
alinux3 6.6.71-3_rc1.al8.x86_64内核,存在同样的问题: ext4/059 [failed, exit status 1]- output mismatch (see /var/tmp/tone/run/xfstests/results//ext4/059.out.bad) --- tests/ext4/059.out 2025-03-03 23:23:32.944651527 +0800 +++ /var/tmp/tone/run/xfstests/results//ext4/059.out.bad 2025-03-06 10:11:34.579440962 +0800 @@ -1,2 +1,5 @@ QA output created by 059 Reserved GDT blocks: 100 +mount: /fs/nvme0n1p2: mount(2) system call failed: Structure needs cleaning. +mount -o acl,user_xattr /dev/nvme0n1p2 /fs/nvme0n1p2 failed +(see /var/tmp/tone/run/xfstests/results//ext4/059.full for details) ... (Run 'diff -u /var/tmp/tone/run/xfstests/tests/ext4/059.out /var/tmp/tone/run/xfstests/results//ext4/059.out.bad' to see the entire diff) HINT: You _MAY_ be missing kernel fix: b55c3cd102a6 ext4: add reserved GDT blocks check