On Thu 19-05-11 13:47:55, Jan Kara wrote: > Different filesystems account different amount of metadata in quota. Thus it is > impractical to check for a particular amount of space occupied by a file > because there is no right value. Change the test to verify whether the amount > of space is between the expected amount of space and the expected amount +5%. > The number of files is checked exactly as previously. > > Signed-off-by: Jan Kara <jack@xxxxxxx> > --- > 219 | 25 +++++++++++++++++++++++-- > 1 files changed, 23 insertions(+), 2 deletions(-) > > Dave, does this look better? Any reaction on this? Honza > > diff --git a/219 b/219 > index 836d703..ad4e64d 100755 > --- a/219 > +++ b/219 > @@ -58,6 +58,23 @@ test_files() > done > } > > +check_usage() > +{ > + wroteblocks=$1 > + wrotefiles=$2 > + read id exceed blocks bsoft bhard inodes isoft ihard > + if [ "$blocks" -lt "$wroteblocks" ]; then > + echo "Too few blocks used (type=$type)" > + # Save 5% for overhead of metadata or different block size > + elif [ "$blocks" -gt $((wroteblocks+wroteblocks/20)) ]; then > + echo "Too many blocks used (type=$type)" > + elif [ "$inodes" != "$wrotefiles" ]; then > + echo "Bad number of inodes used (type=$type)" > + else > + echo "Usage OK (type=$type)" > + fi > +} > + > test_accounting() > { > echo "### some controlled buffered, direct and mmapd IO (type=$type)" > @@ -77,8 +94,12 @@ test_accounting() > $here/src/lstat64 $file | head -3 | _filter_scratch > done > > - repquota -$type -n $SCRATCH_MNT | grep -v "^#0" | _filter_scratch | > - awk '/^#/ { if (seen[$1]) next; seen[$1]++; } { print; }' > + if [ $type == 'u' ]; then > + id=$uid > + else > + id=$gid > + fi > + repquota -$type -n $SCRATCH_MNT | grep "^#$id" | check_usage 144 3 > } > > # real QA test starts here > -- > 1.7.1 > -- Jan Kara <jack@xxxxxxx> SUSE Labs, CR _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs