On Thu, Dec 18, 2014 at 11:05:30AM +1100, Dave Chinner wrote: > On Wed, Dec 17, 2014 at 04:30:47PM +0800, Liu Bo wrote: > > This is a regression test of > > 'commit fcebe4562dec ("Btrfs: rework qgroup accounting")' > > > > It can produce qgroup related warnings. > > > > The fix is https://patchwork.kernel.org/patch/5499981/ > > "Btrfs: fix a warning of qgroup account on shared extents" > .... > > +#! /bin/bash > > +# FS QA Test No. 017 > > +# > > +# Regression of 'commit fcebe4562dec ("Btrfs: rework qgroup accounting")', > > +# this will throw a warning into dmesg. > > +# > > +# For more details, the fix is https://patchwork.kernel.org/patch/5499981/ > > +# "Btrfs: fix a warning of qgroup account on shared extents" > > Please describe the test directly. > > > + > > +_need_to_be_root > > +_supported_fs btrfs > > +_supported_os Linux > > +_require_scratch > > +_require_cloner > > + > > +run_check _scratch_mkfs "--nodesize 4096" > > +run_check _scratch_mount > > No, please don't use run_check like this. > > Errors will end up in the output file, and that will cause the test > to fail. > > > +run_check $XFS_IO_PROG -f -d -c "pwrite 0 8K" $SCRATCH_MNT/foo > > Same - filter the output, and errors will be verbose and cause a > failure. > > > + > > +_run_btrfs_util_prog subvolume snapshot $SCRATCH_MNT $SCRATCH_MNT/snap > > + > > +run_check $CLONER_PROG -s 0 -d 0 -l 8192 $SCRATCH_MNT/foo $SCRATCH_MNT/foo-reflink > > +run_check $CLONER_PROG -s 0 -d 0 -l 8192 $SCRATCH_MNT/foo $SCRATCH_MNT/snap/foo-reflink > > +run_check $CLONER_PROG -s 0 -d 0 -l 8192 $SCRATCH_MNT/foo $SCRATCH_MNT/snap/foo-reflink2 > > Filter the output, not "run_check". > > If CLONER_PROG is silent when it fails, then it is broken and needs > fixing because users need to know that something failed and they > don't check exit codes. > > > +_run_btrfs_util_prog quota enable $SCRATCH_MNT > > +_run_btrfs_util_prog quota rescan -w $SCRATCH_MNT > > + > > +rm -fr $SCRATCH_MNT/* >/dev/null 2>&1 > > Don't redirect the output. If an unlink fails, we want to know about > it. > > > +_run_btrfs_util_prog filesystem sync $SCRATCH_MNT > > What's wrong with "sync"? > > > +$BTRFS_UTIL_PROG qgroup show $SCRATCH_MNT | $SED_PROG -n '/[0-9]/p' | $AWK_PROG '{print $2" "$3}' > > You can do regex matches with awk. Thanks for reviewing this. Thanks, -liubo > > Cheers, > > Dave. > -- > Dave Chinner > david@xxxxxxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe fstests" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html