From: Darrick J. Wong <djwong@xxxxxxxxxx> I run fstests in a readonly container, and accidentally uninstalled the btrfsprogs package. When I did, this test started faililng: --- btrfs/282.out +++ btrfs/282.out.bad @@ -1,3 +1,7 @@ QA output created by 282 wrote 2147483648/2147483648 bytes at offset 0 XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec) +WARNING: cannot create scrub data file, mkdir /var/lib/btrfs failed: Read-only file system. Status recording disabled +WARNING: failed to open the progress status socket at /var/lib/btrfs/scrub.progress.3e1cf8c6-8f8f-4b51-982c-d6783b8b8825: No such file or directory. Progress cannot be queried +WARNING: cannot create scrub data file, mkdir /var/lib/btrfs failed: Read-only file system. Status recording disabled +WARNING: failed to open the progress status socket at /var/lib/btrfs/scrub.progress.3e1cf8c6-8f8f-4b51-982c-d6783b8b8825: No such file or directory. Progress cannot be queried Skip the test if /var/lib/btrfs isn't writable, or if /var/lib isn't writable, which means we cannot create /var/lib/btrfs. Signed-off-by: Darrick J. Wong <djwong@xxxxxxxxxx> --- tests/btrfs/282 | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/tests/btrfs/282 b/tests/btrfs/282 index 980262dcab..395e0626da 100755 --- a/tests/btrfs/282 +++ b/tests/btrfs/282 @@ -19,6 +19,13 @@ _wants_kernel_commit eb3b50536642 \ # We want at least 5G for the scratch device. _require_scratch_size $(( 5 * 1024 * 1024)) +# Make sure we can create scrub progress data file +if [ -e /var/lib/btrfs ]; then + test -w /var/lib/btrfs || _notrun '/var/lib/btrfs is not writable' +else + test -w /var/lib || _notrun '/var/lib/btrfs cannot be created' +fi + _scratch_mkfs >> $seqres.full 2>&1 _scratch_mount