[PATCH] xfstests: Improve test 219 to work with different filesystems
Jan Kara
jack at suse.cz
Fri Jun 3 06:27:56 CDT 2011
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 at suse.cz>
> ---
> 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 at suse.cz>
SUSE Labs, CR
More information about the xfs
mailing list