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 <>
 tests/generic/500 | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/tests/generic/500 b/tests/generic/500
index 201d8b9f..5cd7126f 100755
--- a/tests/generic/500
+++ b/tests/generic/500
@@ -49,6 +49,12 @@ _supported_os Linux
 _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

Reply via email to