* [PATCH] fstests: mkfs the scratch device if we have missing profiles
@ 2024-05-07 20:08 Josef Bacik
2024-05-08 11:53 ` Johannes Thumshirn
2024-05-24 3:51 ` Anand Jain
0 siblings, 2 replies; 3+ messages in thread
From: Josef Bacik @ 2024-05-07 20:08 UTC (permalink / raw)
To: fstests, linux-btrfs, kernel-team
I have a btrfs config where I specifically exclude raid56 testing, and
this resulted in btrfs/011 failing with an inconsistent file system.
This happens because the last test we run does a btrfs device replace of
the $SCRATCH_DEV, leaving it with no valid file system. We then skip
the remaining profiles and exit, but then we go to check the device on
$SCRATCH_DEV and it fails because there is no file system.
Fix this to re-make the scratch device if we skip any of the raid
profiles. This only happens in the case of some idiot user configuring
their testing in a special way, in normal runs of this test we'll never
re-make the fs.
Signed-off-by: Josef Bacik <josef@toxicpanda.com>
---
tests/btrfs/011 | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/tests/btrfs/011 b/tests/btrfs/011
index d8b5a978..b8c14f3b 100755
--- a/tests/btrfs/011
+++ b/tests/btrfs/011
@@ -257,6 +257,12 @@ for t in "-m single -d single:1 no 64" \
workout_option=${t#*:}
if [[ "${_btrfs_profile_configs[@]}" =~ "${mkfs_option/ -M}"( |$) ]]; then
workout "$mkfs_option" $workout_option
+ else
+ # If we have limited the profile configs we could leave
+ # $SCRATCH_DEV in an inconsistent state (because it was
+ # replaced), so mkfs the scratch device to make sure we don't
+ # trip the fs check at the end.
+ _scratch_mkfs > /dev/null 2>&1
fi
done
--
2.43.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] fstests: mkfs the scratch device if we have missing profiles
2024-05-07 20:08 [PATCH] fstests: mkfs the scratch device if we have missing profiles Josef Bacik
@ 2024-05-08 11:53 ` Johannes Thumshirn
2024-05-24 3:51 ` Anand Jain
1 sibling, 0 replies; 3+ messages in thread
From: Johannes Thumshirn @ 2024-05-08 11:53 UTC (permalink / raw)
To: Josef Bacik, fstests@vger.kernel.org, linux-btrfs@vger.kernel.org,
kernel-team@fb.com
On 07.05.24 22:10, Josef Bacik wrote:
> I have a btrfs config where I specifically exclude raid56 testing, and
> this resulted in btrfs/011 failing with an inconsistent file system.
> This happens because the last test we run does a btrfs device replace of
> the $SCRATCH_DEV, leaving it with no valid file system. We then skip
> the remaining profiles and exit, but then we go to check the device on
> $SCRATCH_DEV and it fails because there is no file system.
>
> Fix this to re-make the scratch device if we skip any of the raid
> profiles. This only happens in the case of some idiot user configuring
> their testing in a special way, in normal runs of this test we'll never
> re-make the fs.
>
> Signed-off-by: Josef Bacik <josef@toxicpanda.com>
> ---
> tests/btrfs/011 | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/tests/btrfs/011 b/tests/btrfs/011
> index d8b5a978..b8c14f3b 100755
> --- a/tests/btrfs/011
> +++ b/tests/btrfs/011
> @@ -257,6 +257,12 @@ for t in "-m single -d single:1 no 64" \
> workout_option=${t#*:}
> if [[ "${_btrfs_profile_configs[@]}" =~ "${mkfs_option/ -M}"( |$) ]]; then
> workout "$mkfs_option" $workout_option
> + else
> + # If we have limited the profile configs we could leave
> + # $SCRATCH_DEV in an inconsistent state (because it was
> + # replaced), so mkfs the scratch device to make sure we don't
> + # trip the fs check at the end.
> + _scratch_mkfs > /dev/null 2>&1
> fi
> done
>
Looks good,
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Btw, looking at test, we'd also need to remove the -M mkfs option in
case of zoned devices as mixed profiles aren't supported there.
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] fstests: mkfs the scratch device if we have missing profiles
2024-05-07 20:08 [PATCH] fstests: mkfs the scratch device if we have missing profiles Josef Bacik
2024-05-08 11:53 ` Johannes Thumshirn
@ 2024-05-24 3:51 ` Anand Jain
1 sibling, 0 replies; 3+ messages in thread
From: Anand Jain @ 2024-05-24 3:51 UTC (permalink / raw)
To: Josef Bacik, fstests, linux-btrfs, kernel-team
On 5/8/24 04:08, Josef Bacik wrote:
> I have a btrfs config where I specifically exclude raid56 testing, and
> this resulted in btrfs/011 failing with an inconsistent file system.
> This happens because the last test we run does a btrfs device replace of
> the $SCRATCH_DEV, leaving it with no valid file system. We then skip
> the remaining profiles and exit, but then we go to check the device on
> $SCRATCH_DEV and it fails because there is no file system.
>
> Fix this to re-make the scratch device if we skip any of the raid
> profiles. This only happens in the case of some idiot user configuring
> their testing in a special way, in normal runs of this test we'll never
> re-make the fs.
>
> Signed-off-by: Josef Bacik <josef@toxicpanda.com>
Reviewed-by: Anand Jain <anand.jain@oracle.com>
Applied.
Thanks, Anand
> ---
> tests/btrfs/011 | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/tests/btrfs/011 b/tests/btrfs/011
> index d8b5a978..b8c14f3b 100755
> --- a/tests/btrfs/011
> +++ b/tests/btrfs/011
> @@ -257,6 +257,12 @@ for t in "-m single -d single:1 no 64" \
> workout_option=${t#*:}
> if [[ "${_btrfs_profile_configs[@]}" =~ "${mkfs_option/ -M}"( |$) ]]; then
> workout "$mkfs_option" $workout_option
> + else
> + # If we have limited the profile configs we could leave
> + # $SCRATCH_DEV in an inconsistent state (because it was
> + # replaced), so mkfs the scratch device to make sure we don't
> + # trip the fs check at the end.
> + _scratch_mkfs > /dev/null 2>&1
> fi
> done
>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2024-05-24 3:51 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-05-07 20:08 [PATCH] fstests: mkfs the scratch device if we have missing profiles Josef Bacik
2024-05-08 11:53 ` Johannes Thumshirn
2024-05-24 3:51 ` Anand Jain
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox