It turns out that icreate transactions will try to reserve quite a bit
of space on a 64k fsblock filesystem -- enough to handle the worst case
parent directory expansion, a new inode chunk, and these days a parent
pointer as well. This can work out to quite a bit of space:
fsblock reservation
1k 172K
4k 368K
16k 1136K
64k 3650K
Unfortunately, this test sets its block quota limits at 1-2MB, so we
can't even create a child file. Bump the limits up by 10x so that this
test will pass even if there's more metadata size creep in the future.
Fixes: f769a923f576df ("xfs: project quota ineritance flag test")
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Zorro Lang <zlang@kernel.org>
local exp=$2
echo "Write $file, expect $exp:" | _filter_scratch
- $XFS_IO_PROG -t -f -c "pwrite 0 5m" $file 2>&1 >/dev/null | \
+ $XFS_IO_PROG -t -f -c "pwrite 0 50m" $file 2>&1 >/dev/null | \
_filter_xfs_io_error
rm -f $file
}
mkdir $SCRATCH_MNT/dir
$QUOTA_CMD -x -c 'project -s test' $SCRATCH_MNT >>$seqres.full 2>&1
-$QUOTA_CMD -x -c 'limit -p bsoft=1m bhard=2m test' $SCRATCH_MNT
+$QUOTA_CMD -x -c 'limit -p bsoft=10m bhard=20m test' $SCRATCH_MNT
# test the Project inheritance bit is a directory only flag, and it's set on
# directory by default. Expect no complain about "project inheritance flag is