From: Subrata M. <su...@li...> - 2009-12-03 15:11:57
|
Hi Miao, On Thu, 2009-11-26 at 20:02 +0800, Miao Xie wrote: > 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. I had already checked in your earlier patch long back. So, you would please need to resend over the latest code. Regards-- Subrata > > >>> 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 <mi...@cn...> > --- > 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++)) > -- > |