From: Filipe Manana Date: Fri, 25 Oct 2024 17:24:21 +0000 (+0100) Subject: btrfs: test remount with "compress" clears "compress-force" X-Git-Tag: xfs-zoned-2024-11-18~73 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=f056971a4d2f2314b162e8e2114514dc86cd8515;p=users%2Fhch%2Fxfstests-dev.git btrfs: test remount with "compress" clears "compress-force" Test that remounting with the "compress" mount option clears the "compress-force" mount option previously specified. This tests a regression introduced with kernel 6.8 and recently fixed by the following kernel commit: 3510e684b8f6 ("btrfs: clear force-compress on remount when compress mount option is given") Signed-off-by: Filipe Manana Reviewed-by: Zorro Lang Reviewed-by: Anand Jain Signed-off-by: Zorro Lang --- diff --git a/tests/btrfs/324 b/tests/btrfs/324 new file mode 100755 index 000000000..5cafa4b2a --- /dev/null +++ b/tests/btrfs/324 @@ -0,0 +1,39 @@ +#! /bin/bash +# SPDX-License-Identifier: GPL-2.0 +# Copyright (C) 2024 SUSE Linux Products GmbH. All Rights Reserved. +# +# Test that remounting with the "compress" mount option clears the +# "compress-force" mount option previously specified. +# +. ./common/preamble +_begin_fstest auto quick mount remount compress + +_require_scratch + +_fixed_by_kernel_commit 3510e684b8f6 \ + "btrfs: clear force-compress on remount when compress mount option is given" + +_scratch_mkfs >>$seqres.full 2>&1 || _fail "mkfs failed" +_scratch_mount -o compress-force=zlib:9 + +# Confirm we have compress-force with zlib:9 +grep -wq 'compress-force=zlib:9' <(findmnt -rncv -S $SCRATCH_DEV -o OPTIONS) +if [ $? -ne 0 ]; then + echo "compress-force not set to zlib:9 after initial mount:" + findmnt -rncv -S $SCRATCH_DEV -o OPTIONS +fi + +# Remount with compress=zlib:4, which should clear compress-force and set the +# algorithm to zlib:4. +_scratch_remount compress=zlib:4 + +grep -wq 'compress=zlib:4' <(findmnt -rncv -S $SCRATCH_DEV -o OPTIONS) +if [ $? -ne 0 ]; then + echo "compress not set to zlib:4 after remount:" + findmnt -rncv -S $SCRATCH_DEV -o OPTIONS +fi + +echo "Silence is golden" + +status=0 +exit diff --git a/tests/btrfs/324.out b/tests/btrfs/324.out new file mode 100644 index 000000000..b46ecd711 --- /dev/null +++ b/tests/btrfs/324.out @@ -0,0 +1,2 @@ +QA output created by 324 +Silence is golden