#! /bin/bash
# FS QA Test No. ext4/003
#
# Regression test for commit:
# b5b6077 ext4: fix wrong assert in ext4_mb_normalize_request()
# This testcase checks whether this bug has been fixed.
#
#-----------------------------------------------------------------------
# Copyright (c) 2014 Fujitsu.  All Rights Reserved.
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License as
# published by the Free Software Foundation.
#
# This program is distributed in the hope that it would be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#-----------------------------------------------------------------------

seq=`basename $0`
seqres=$RESULT_DIR/$seq
echo "QA output created by $seq"

trap "_cleanup; exit \$status" 0 1 2 3 15

_cleanup()
{
    _scratch_unmount
}

# get standard environment, filters and checks
. ./common/rc
. ./common/filter

# real QA test starts here
_supported_fs ext4
_supported_os Linux

_require_scratch
_require_ext4_mkfs_feature "bigalloc"
_require_ext4_bigalloc

rm -f $seqres.full

$MKFS_EXT4_PROG -F -O bigalloc -C 65536  -g 256 $SCRATCH_DEV 512m \
	>> $seqres.full 2>&1
_scratch_mount || _fail "couldn't mount fs"

$XFS_IO_PROG -f -c "pwrite 0 256m -b 1M" $SCRATCH_MNT/testfile 2>&1 | \
	_filter_xfs_io

status=0
exit
