Hi, Subrata on 2009-11-2 21:59, Subrata Modak wrote: >>>>> /dev/VG1_EXT4/LV1_EXT4: The test_fs flag is set (and ext4 is >>>>> available). >>>>> CLEARED. >>>> You don't need to set the test_fs flag for modern ext4. >>> Can we change this ?
The attached patch can fix this problem. >>> However, it is also accompanied by the following failures in the >>> online-defrag part: >>> ======================================================================================== >>> ext4-online-defrag 0 TINFO : defrag type: 1, defrag obj: 3, block >>> size: 1024 [snip] >>> ext4-online-defrag 3 TFAIL : e4defrag returned failure [snip] >>> ext4-online-defrag 0 TINFO : defrag type: 2, defrag obj: 3, block >>> size: 1024 [snip] >>> ext4-online-defrag 6 TFAIL : e4defrag returned failure >>> ext4-online-defrag 0 TINFO : defrag type: 3, defrag obj: 1, block >>> size: 1024 [snip] >>> ext4-online-defrag 7 TFAIL : e4defrag returned failure >>> ext4-online-defrag 0 TINFO : defrag type: 3, defrag obj: 2, block >>> size: 1024 [snip] >>> File is not regular file >>> "/dev/VG1_EXT4/LV1_EXT4" >>> ext4-online-defrag 8 TFAIL : e4defrag returned failure >>> ext4-online-defrag 0 TINFO : defrag type: 3, defrag obj: 3, block >>> size: 1024 [snip] >>> ext4-online-defrag 9 TFAIL : e4defrag returned failure >>> ... >>> ext4-online-defrag 0 TINFO : defrag type: 3, defrag obj: 2, block >>> size: 4096 [snip] >>> File is not regular file >>> "/dev/VG1_EXT4/LV1_EXT4" >>> ext4-online-defrag 17 TFAIL : e4defrag returned failure >>> ext4-online-defrag 0 TINFO : defrag type: 3, defrag obj: 3, block >>> size: 4096 [snip] >>> File is not regular file >>> "/dev/VG1_EXT4/LV1_EXT4" >>> ext4-online-defrag 18 TFAIL : e4defrag returned failure >>> incrementing stop >>> ======================================================================================== >>> Did you see these failure on your machine ? >> Your take on this ? I didn't find these failure on my box. The attached patch opens the verbose mode of e4defrag to get more information later, it is useful to find the problem of online defrag. So, Could you test it again and send the output info to me? >> >>> Some more points are: >>> >>> 1. Can you please run these tests against the backdrop of the >>> Makefile changes in LTP to see all the build/install/run are >>> executing fine, >> Could you please verify this before this release. Let me know a patch if >> you find any discrepancy :-) The attached patch can fix this problem. >> >>> 2. Can you also please put all the utilities version info at the >>> beginning of the test rather than printing them again and >>> again(like mke2fs 1.41.9 (22-Aug-2009),tune2fs 1.41.9 >>> (22-Aug-2009),dumpe2fs 1.41.9 (22-Aug-2009),dumpe2fs 1.41.9 >>> (22-Aug-2009)) >> This can go in the next month release as well, if you do not have time >> to fix now. Else, i have a bug mouth to eat this as well ;-) The attached patch can fix this problem. This patch can fix the following problem: -- delete the code of setting the test_fs flag -- open the verbose mode of e4defrag, it is useful to find the problem of online defrag -- fix some bug of the Makefile -- throw the utilities version info away Signed-off-by: Miao Xie <[email protected]> --- diff --git a/testcases/kernel/fs/ext4-new-features/ext4-delalloc-mballoc/ext4-alloc-test.sh b/testcases/kernel/fs/ext4-new-features/ext4-delalloc-mballoc/ext4-alloc-test.sh index 63c614c..be7b074 100755 --- a/testcases/kernel/fs/ext4-new-features/ext4-delalloc-mballoc/ext4-alloc-test.sh +++ b/testcases/kernel/fs/ext4-new-features/ext4-delalloc-mballoc/ext4-alloc-test.sh @@ -85,8 +85,7 @@ ext4_test_remount() # $4: auto_da_alloc ext4_test_delalloc_mballoc() { - tst_resm TINFO "isDelalloc: $1, isDirectIO: $2, Blocksize: $3, \ - isAuto_da_alloc: $4" + tst_resm TINFO "isDelalloc: $1, isDirectIO: $2, Blocksize: $3, isAuto_da_alloc: $4" mkfs.ext4 -I 256 -b $3 /$EXT4_DEV &> /dev/null if [ $? -ne 0 ]; then diff --git a/testcases/kernel/fs/ext4-new-features/ext4-inode-version/ext4_get_inode_version.sh b/testcases/kernel/fs/ext4-new-features/ext4-inode-version/ext4_get_inode_version.sh index 8f5c907..0e7a8b6 100755 --- a/testcases/kernel/fs/ext4-new-features/ext4-inode-version/ext4_get_inode_version.sh +++ b/testcases/kernel/fs/ext4-new-features/ext4-inode-version/ext4_get_inode_version.sh @@ -24,7 +24,7 @@ #$2: 1 - return inode version by return value # !1 - writting inode version to stddev -inode_version=`debugfs -R "stat $1" $EXT4_DEV | grep 'Version' | awk '{ +inode_version=`debugfs -R "stat $1" $EXT4_DEV 2> /dev/null | grep 'Version' | awk '{ print $NF }'` # The inode_version's format: '0x0000000a' or '0x00000000:0000000a', diff --git a/testcases/kernel/fs/ext4-new-features/ext4-inode-version/ext4_inode_version_test.sh b/testcases/kernel/fs/ext4-new-features/ext4-inode-version/ext4_inode_version_test.sh index 4798e99..4a58b36 100755 --- a/testcases/kernel/fs/ext4-new-features/ext4-inode-version/ext4_inode_version_test.sh +++ b/testcases/kernel/fs/ext4-new-features/ext4-inode-version/ext4_inode_version_test.sh @@ -67,7 +67,7 @@ ext4_test_128_inode_version() fi # inode version is 32 bits: 0x00000000 - version=`debugfs $EXT4_DEV -R "stat tmp_file" | grep 'Version'` + version=`debugfs $EXT4_DEV -R "stat tmp_file" 2> /dev/null | grep 'Version'` version=`echo $version | awk '{ print $NF }'` version=`echo $version | sed 's/^0x//'` len=${#version} diff --git a/testcases/kernel/fs/ext4-new-features/ext4-journal-checksum/ext4_journal_checksum.sh b/testcases/kernel/fs/ext4-new-features/ext4-journal-checksum/ext4_journal_checksum.sh index 310eaa0..eb72b5d 100755 --- a/testcases/kernel/fs/ext4-new-features/ext4-journal-checksum/ext4_journal_checksum.sh +++ b/testcases/kernel/fs/ext4-new-features/ext4-journal-checksum/ext4_journal_checksum.sh @@ -59,9 +59,9 @@ ext4_test_journal_checksum() async_commit="Used" fi - tst_resm TINFO "journal mode: $1, commit interval: $2, \ - journal_checksum: $checksum, \ - journal_async_commit: $async_commit, barrier: $5" + tst_resm TINFO "journal mode: $1, commit interval: $2, " \ + "journal_checksum: $checksum, " \ + "journal_async_commit: $async_commit, barrier: $5" mkfs.ext4 -I 256 $EXT4_DEV &> /dev/null if [ $? -ne 0 ]; then diff --git a/testcases/kernel/fs/ext4-new-features/ext4-online-defrag/ext4_online_defrag_test.sh b/testcases/kernel/fs/ext4-new-features/ext4-online-defrag/ext4_online_defrag_test.sh index 3747783..c901758 100755 --- a/testcases/kernel/fs/ext4-new-features/ext4-online-defrag/ext4_online_defrag_test.sh +++ b/testcases/kernel/fs/ext4-new-features/ext4-online-defrag/ext4_online_defrag_test.sh @@ -126,13 +126,15 @@ ext4_test_online_defrag() tst_resm TINFO "defrag type: $1, defrag obj: $2, block size: $3" - mkfs.ext4 -m 0 -b $3 -O ^flex_bg $EXT4_DEV &> /dev/null + mkfs.ext4 -m 0 -b $3 -O ^flex_bg $EXT4_DEV &>> \ + $LTPROOT/output/ext4_online_defrag_result.txt if [ $? -ne 0 ]; then tst_resm TFAIL "failed to create ext4 filesystem" return 1 fi - tune2fs -O extents $EXT4_DEV &> /dev/null + tune2fs -O extents $EXT4_DEV &>> \ + $LTPROOT/output/ext4_online_defrag_result.txt mount -t ext4 -o nodelalloc $EXT4_DEV mnt_point if [ $? -ne 0 ]; then @@ -140,9 +142,9 @@ ext4_test_online_defrag() return 1 fi - age_filesystem $2 $1 >> $LTPROOT/output/ext4_online_defrag_result.txt + age_filesystem $2 $1 &>> $LTPROOT/output/ext4_online_defrag_result.txt - my_e4defrag $1 $2 >> $LTPROOT/output/ext4_online_defrag_result.txt + my_e4defrag $1 $2 &>> $LTPROOT/output/ext4_online_defrag_result.txt if [ $? -ne 0 ]; then tst_resm TFAIL "e4defrag returned failure" umount mnt_point @@ -155,13 +157,14 @@ ext4_test_online_defrag() return 1 fi - e2fsck -p $EXT4_DEV &> /dev/null + e2fsck -p $EXT4_DEV &>> \ + $LTPROOT/output/ext4_online_defrag_result.txt if [ $? -ne 0 ]; then tst_resm TFAIL "fsck returned failure" return 1 fi - tst_resm TPASS "ext4 online defrag test pass(defrag type: $1, Aging: $2, block size: $3)" + tst_resm TPASS "ext4 online defrag test pass" } # main diff --git a/testcases/kernel/fs/ext4-new-features/ext4-subdir-limit/ext4_subdir_limit_test.sh b/testcases/kernel/fs/ext4-new-features/ext4-subdir-limit/ext4_subdir_limit_test.sh index 1483191..97b11ab 100755 --- a/testcases/kernel/fs/ext4-new-features/ext4-subdir-limit/ext4_subdir_limit_test.sh +++ b/testcases/kernel/fs/ext4-new-features/ext4-subdir-limit/ext4_subdir_limit_test.sh @@ -59,8 +59,8 @@ ext4_run_case() dir_name_len="long name" fi - tst_resm TINFO "Num of dirs to create: $1, Dir name len: $dir_name_len \ - Parent dir: $3, Block size: $4" + tst_resm TINFO "Num of dirs to create: $1, Dir name len: $dir_name_len, " \ + "Parent dir: $3, Block size: $4" # only mkfs if block size has been changed, # or previous case failed @@ -127,7 +127,7 @@ ext4_run_case() fi # check dir_nlink is set - dumpe2fs $EXT4_DEV | grep '^Filesystem features' | grep -q dir_nlink + dumpe2fs $EXT4_DEV 2> /dev/null | grep '^Filesystem features' | grep -q dir_nlink if [ $? -ne 0 ]; then tst_resm TFAIL "feature dir_nlink is not set" return 1 diff --git a/testcases/kernel/fs/ext4-new-features/ext4-uninit-groups/ext4_uninit_groups_test.sh b/testcases/kernel/fs/ext4-new-features/ext4-uninit-groups/ext4_uninit_groups_test.sh index 88fbfa9..c3fe386 100755 --- a/testcases/kernel/fs/ext4-new-features/ext4-uninit-groups/ext4_uninit_groups_test.sh +++ b/testcases/kernel/fs/ext4-new-features/ext4-uninit-groups/ext4_uninit_groups_test.sh @@ -40,8 +40,8 @@ LARGE=3 # filesystem free size in bytes: blocks_size * free_blocks filesystem_free_size() { - bsize=`dumpe2fs -h $EXT4_DEV | grep 'Block size' | awk '{ print $2 }'` - blocks=`dumpe2fs -h $EXT4_DEV | grep 'Free blocks'| awk '{ print $2 }'` + bsize=`dumpe2fs -h $EXT4_DEV 2> /dev/null | grep 'Block size' | awk '{ print $2 }'` + blocks=`dumpe2fs -h $EXT4_DEV 2> /dev/null | grep 'Free blocks'| awk '{ print $2 }'` echo $bsize * $blocks } @@ -61,9 +61,9 @@ age_filesystem() } elif [ $1 -eq $LARGE ]; then rm -rf mnt_point/* - bsize=`dumpe2fs -h $EXT4_DEV | grep 'Block size'` + bsize=`dumpe2fs -h $EXT4_DEV 2> /dev/null | grep 'Block size'` bsize=`echo $bsize | awk '{ print $3 }'` - bcount=`dumpe2fs -h $EXT4_DEV | grep 'Free blocks'` + bcount=`dumpe2fs -h $EXT4_DEV 2> /dev/null | grep 'Free blocks'` bcount=`echo $bcount | awk '{ print $3 }'` dd if=/dev/zero of=mnt_point/tmp_dir bs=$bsize count=$bcount else @@ -80,6 +80,8 @@ age_filesystem() # $4: age filesystem: $EMPTY, $SMALL, $LARGE ext4_test_uninit_groups() { + echo "Test $TST_COUNT" >> $LTPROOT/output/ext4_uninit_groups_result.txt + mkfs.ext4 -I 256 -m 0 $EXT4_DEV &> /dev/null if [ $? -ne 0 ]; then tst_resm TFAIL "failed to create ext4 filesystem" @@ -103,7 +105,7 @@ ext4_test_uninit_groups() return 1 fi - age_filesystem $4 + age_filesystem $4 &>> $LTPROOT/output/ext4_uninit_groups_result.txt if [ $? -ne 0 ]; then tst_resm TFAIL "age filesystem failed" umount mnt_point @@ -135,6 +137,8 @@ AGING=( $EMPTY $SMALL $LARGE ) RET=0 +rm -f $LTPROOT/output/ext4_uninit_groups_result.txt + for ((i = 0; i < 2; i++)) { for ((j = 0; j < 2; j++)) -- ------------------------------------------------------------------------------ Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day trial. Simplify your report design, integration and deployment - and focus on what you do best, core application coding. Discover what's new with Crystal Reports now. http://p.sf.net/sfu/bobj-july _______________________________________________ Ltp-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ltp-list
