generic/500: doesn't work for btrfs

Btrfs does COW, so when we unlink the file we need to update
metadata and write it to a new location, which we can't do because
the thinp is full.  This results in an EIO during a metadata write,
which makes us flip read only, thus making it impossible to fstrim
the fs.  Just make it so we skip this test for btrfs.

Signed-off-by: Josef Bacik <josef@toxicpanda.com>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Eryu Guan <guaneryu@gmail.com>
This commit is contained in:
Josef Bacik
2019-08-15 14:26:59 -04:00
committed by Eryu Guan
parent 8bbd45ad5b
commit 9cd2fe8a93
+6
View File
@@ -49,6 +49,12 @@ _supported_os Linux
_require_scratch_nocheck
_require_dm_target thin-pool
# The unlink below will result in new metadata blocks for btrfs because of CoW,
# and since we've filled the thinp device it'll return EIO, which will make
# btrfs flip read only, making it fail this test when it just won't work right
# for us in the first place.
test $FSTYP == "btrfs" && _notrun "btrfs doesn't work that way lol"
# Require underlying device support discard
_scratch_mkfs >>$seqres.full 2>&1
_scratch_mount