diff mbox series

fstests: btrfs/271: specify "-m raid1" to avoid false alerts

Message ID 20250417102623.8638-1-wqu@suse.com (mailing list archive)
State New
Headers show
Series fstests: btrfs/271: specify "-m raid1" to avoid false alerts | expand

Commit Message

Qu Wenruo April 17, 2025, 10:26 a.m. UTC
[FALSE FAILURE]
Test case btrfs/271 will failure like the following, if the MKFS_OPTIONS
has specified a metadata profile (either SINGLE or DUP):

  btrfs/271 1s ... - output mismatch (see /home/adam/xfstests/results//btrfs/271.out.bad)
      --- tests/btrfs/271.out	2022-11-07 09:59:11.256666666 +1030
      +++ /home/adam/xfstests/results//btrfs/271.out.bad	2025-04-17 19:49:00.129443427 +0930
      @@ -1,523 +1,9 @@
       QA output created by 271
       Allow global fail_make_request feature
       Step 1: writing with one failing mirror:
      -wrote 8192/8192 bytes at offset 0
      -XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
      +fsync: Input/output error
       Step 2: verify that the data reads back fine:
      ...
      (Run 'diff -u /home/adam/xfstests/tests/btrfs/271.out /home/adam/xfstests/results//btrfs/271.out.bad'  to see the entire diff)
  Ran: btrfs/271
  Failures: btrfs/271
  Failed 1 of 1 tests

[CAUSE]
The test case relies on mkfs.btrfs to use RAID1 as default metadata
profile if multiple devices are provided.

This is no longer true if the run has specified certain profile in
MKFS_OPTIONS.

If "-m dup" or "-m single" is specified, the fs will flip read-only as
either profile can handle any missing or failed device super block
writeback.

[FIX]
Just specify both metadata (RAID1) and data (RAID1, already in the test
case) to avoid the false failure.

Reported-by: Luis Chamberlain <mcgrof@kernel.org>
Signed-off-by: Qu Wenruo <wqu@suse.com>
---
 tests/btrfs/271 | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Filipe Manana April 17, 2025, 10:49 a.m. UTC | #1
On Thu, Apr 17, 2025 at 11:26 AM Qu Wenruo <wqu@suse.com> wrote:
>
> [FALSE FAILURE]
> Test case btrfs/271 will failure like the following, if the MKFS_OPTIONS

will failure -> will fail

> has specified a metadata profile (either SINGLE or DUP):
>
>   btrfs/271 1s ... - output mismatch (see /home/adam/xfstests/results//btrfs/271.out.bad)
>       --- tests/btrfs/271.out   2022-11-07 09:59:11.256666666 +1030
>       +++ /home/adam/xfstests/results//btrfs/271.out.bad        2025-04-17 19:49:00.129443427 +0930
>       @@ -1,523 +1,9 @@
>        QA output created by 271
>        Allow global fail_make_request feature
>        Step 1: writing with one failing mirror:
>       -wrote 8192/8192 bytes at offset 0
>       -XXX Bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
>       +fsync: Input/output error
>        Step 2: verify that the data reads back fine:
>       ...
>       (Run 'diff -u /home/adam/xfstests/tests/btrfs/271.out /home/adam/xfstests/results//btrfs/271.out.bad'  to see the entire diff)
>   Ran: btrfs/271
>   Failures: btrfs/271
>   Failed 1 of 1 tests
>
> [CAUSE]
> The test case relies on mkfs.btrfs to use RAID1 as default metadata
> profile if multiple devices are provided.
>
> This is no longer true if the run has specified certain profile in
> MKFS_OPTIONS.
>
> If "-m dup" or "-m single" is specified, the fs will flip read-only as
> either profile can handle any missing or failed device super block
> writeback.
>
> [FIX]
> Just specify both metadata (RAID1) and data (RAID1, already in the test
> case) to avoid the false failure.
>
> Reported-by: Luis Chamberlain <mcgrof@kernel.org>
> Signed-off-by: Qu Wenruo <wqu@suse.com>

Reviewed-by: Filipe Manana <fdmanana@suse.com>

Looks good, thanks.

> ---
>  tests/btrfs/271 | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tests/btrfs/271 b/tests/btrfs/271
> index 2fc38e9c..7d5424f8 100755
> --- a/tests/btrfs/271
> +++ b/tests/btrfs/271
> @@ -18,7 +18,7 @@ _require_scratch_dev_pool 2
>  _scratch_dev_pool_get 2
>
>  _check_minimal_fs_size $(( 1024 * 1024 * 1024 ))
> -_scratch_pool_mkfs "-d raid1 -b 1G" >> $seqres.full 2>&1
> +_scratch_pool_mkfs "-m raid1 -d raid1 -b 1G" >> $seqres.full 2>&1
>
>  _scratch_mount
>
> --
> 2.47.1
>
>
Anand Jain April 17, 2025, 1:05 p.m. UTC | #2
On 17/4/25 16:19, Filipe Manana wrote:
> On Thu, Apr 17, 2025 at 11:26 AM Qu Wenruo <wqu@suse.com> wrote:
>>
>> [FALSE FAILURE]
>> Test case btrfs/271 will failure like the following, if the MKFS_OPTIONS
> 
> will failure -> will fail

Fixed. Applied. (for-next)

Reviewed-by: Anand Jain <anand.jain@oracle.com>

Thanks, Anand
Luis Chamberlain April 17, 2025, 3:48 p.m. UTC | #3
On Thu, Apr 17, 2025 at 07:56:23PM +0930, Qu Wenruo wrote:
> Reported-by: Luis Chamberlain <mcgrof@kernel.org>

I would prefer: kdevops <kdevops@lists.linux.dev>

As this will just be automated and kdevops is not just me, its a
community now. I just nudge it forward when I can.

  Luis
diff mbox series

Patch

diff --git a/tests/btrfs/271 b/tests/btrfs/271
index 2fc38e9c..7d5424f8 100755
--- a/tests/btrfs/271
+++ b/tests/btrfs/271
@@ -18,7 +18,7 @@  _require_scratch_dev_pool 2
 _scratch_dev_pool_get 2
 
 _check_minimal_fs_size $(( 1024 * 1024 * 1024 ))
-_scratch_pool_mkfs "-d raid1 -b 1G" >> $seqres.full 2>&1
+_scratch_pool_mkfs "-m raid1 -d raid1 -b 1G" >> $seqres.full 2>&1
 
 _scratch_mount