* [PATCH] fstests: btrfs: a new test case to verify scrub and rescue=idatacsums @ 2025-05-12 5:25 Qu Wenruo 2025-05-12 5:59 ` Johannes Thumshirn 2025-05-12 7:44 ` Filipe Manana 0 siblings, 2 replies; 9+ messages in thread From: Qu Wenruo @ 2025-05-12 5:25 UTC (permalink / raw) To: linux-btrfs, fstests There is a kernel bug report that scrub will trigger a NULL pointer dereference when rescue=idatacsums mount option is provided. Add a test case for such situation, to verify kernel can gracefully reject scrub when there is no csum tree. Signed-off-by: Qu Wenruo <wqu@suse.com> --- tests/btrfs/336 | 32 ++++++++++++++++++++++++++++++++ tests/btrfs/336.out | 2 ++ 2 files changed, 34 insertions(+) create mode 100755 tests/btrfs/336 create mode 100644 tests/btrfs/336.out diff --git a/tests/btrfs/336 b/tests/btrfs/336 new file mode 100755 index 00000000..f76a8e21 --- /dev/null +++ b/tests/btrfs/336 @@ -0,0 +1,32 @@ +#! /bin/bash +# SPDX-License-Identifier: GPL-2.0 +# Copyright (C) 2025 SUSE Linux Products GmbH. All Rights Reserved. +# +# FS QA Test 336 +# +# Make sure read-only scrub won't cause NULL pointer dereference with +# rescue=idatacsums mount option +# +. ./common/preamble +_begin_fstest auto scrub quick + +_fixed_by_kernel_commit 6aecd91a5c5b \ + "btrfs: avoid NULL pointer dereference if no valid extent tree" + +_require_scratch +_scratch_mkfs >> $seqres.full + +_try_scratch_mount "-o ro,rescue=ignoredatacsums" > /dev/null 2>&1 || + _notrun "rescue=ignoredatacsums mount option not supported" + +# For unpatched kernel this will cause NULL pointer dereference and crash the kernel. +# For patched kernel scrub will be gracefully rejected. +$BTRFS_UTIL_PROG scrub start -Br $SCRATCH_MNT >> $seqres.full 2>&1 + +_scratch_unmount + +echo "Silence is golden" + +# success, all done +status=0 +exit diff --git a/tests/btrfs/336.out b/tests/btrfs/336.out new file mode 100644 index 00000000..9263628e --- /dev/null +++ b/tests/btrfs/336.out @@ -0,0 +1,2 @@ +QA output created by 336 +Silence is golden -- 2.47.1 ^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH] fstests: btrfs: a new test case to verify scrub and rescue=idatacsums 2025-05-12 5:25 [PATCH] fstests: btrfs: a new test case to verify scrub and rescue=idatacsums Qu Wenruo @ 2025-05-12 5:59 ` Johannes Thumshirn 2025-05-12 7:44 ` Filipe Manana 1 sibling, 0 replies; 9+ messages in thread From: Johannes Thumshirn @ 2025-05-12 5:59 UTC (permalink / raw) To: WenRuo Qu, linux-btrfs@vger.kernel.org, fstests@vger.kernel.org Looks good, Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com> ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] fstests: btrfs: a new test case to verify scrub and rescue=idatacsums 2025-05-12 5:25 [PATCH] fstests: btrfs: a new test case to verify scrub and rescue=idatacsums Qu Wenruo 2025-05-12 5:59 ` Johannes Thumshirn @ 2025-05-12 7:44 ` Filipe Manana 2025-05-12 7:50 ` Qu Wenruo 1 sibling, 1 reply; 9+ messages in thread From: Filipe Manana @ 2025-05-12 7:44 UTC (permalink / raw) To: Qu Wenruo; +Cc: linux-btrfs, fstests On Mon, May 12, 2025 at 6:26 AM Qu Wenruo <wqu@suse.com> wrote: > > There is a kernel bug report that scrub will trigger a NULL pointer > dereference when rescue=idatacsums mount option is provided. > > Add a test case for such situation, to verify kernel can gracefully > reject scrub when there is no csum tree. > > Signed-off-by: Qu Wenruo <wqu@suse.com> > --- > tests/btrfs/336 | 32 ++++++++++++++++++++++++++++++++ > tests/btrfs/336.out | 2 ++ > 2 files changed, 34 insertions(+) > create mode 100755 tests/btrfs/336 > create mode 100644 tests/btrfs/336.out > > diff --git a/tests/btrfs/336 b/tests/btrfs/336 > new file mode 100755 > index 00000000..f76a8e21 > --- /dev/null > +++ b/tests/btrfs/336 > @@ -0,0 +1,32 @@ > +#! /bin/bash > +# SPDX-License-Identifier: GPL-2.0 > +# Copyright (C) 2025 SUSE Linux Products GmbH. All Rights Reserved. > +# > +# FS QA Test 336 > +# > +# Make sure read-only scrub won't cause NULL pointer dereference with > +# rescue=idatacsums mount option > +# > +. ./common/preamble > +_begin_fstest auto scrub quick > + > +_fixed_by_kernel_commit 6aecd91a5c5b \ > + "btrfs: avoid NULL pointer dereference if no valid extent tree" > + > +_require_scratch > +_scratch_mkfs >> $seqres.full > + > +_try_scratch_mount "-o ro,rescue=ignoredatacsums" > /dev/null 2>&1 || > + _notrun "rescue=ignoredatacsums mount option not supported" > + > +# For unpatched kernel this will cause NULL pointer dereference and crash the kernel. > +# For patched kernel scrub will be gracefully rejected. > +$BTRFS_UTIL_PROG scrub start -Br $SCRATCH_MNT >> $seqres.full 2>&1 If the scrub is supposed to fail, as the comment says, then we should check that it fails. Right now we're ignoring whether it succeeds or fails. Otherwise it looks fine, thanks. > + > +_scratch_unmount > + > +echo "Silence is golden" > + > +# success, all done > +status=0 > +exit > diff --git a/tests/btrfs/336.out b/tests/btrfs/336.out > new file mode 100644 > index 00000000..9263628e > --- /dev/null > +++ b/tests/btrfs/336.out > @@ -0,0 +1,2 @@ > +QA output created by 336 > +Silence is golden > -- > 2.47.1 > > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] fstests: btrfs: a new test case to verify scrub and rescue=idatacsums 2025-05-12 7:44 ` Filipe Manana @ 2025-05-12 7:50 ` Qu Wenruo 2025-05-12 7:54 ` Filipe Manana 0 siblings, 1 reply; 9+ messages in thread From: Qu Wenruo @ 2025-05-12 7:50 UTC (permalink / raw) To: Filipe Manana; +Cc: linux-btrfs, fstests 在 2025/5/12 17:14, Filipe Manana 写道: > On Mon, May 12, 2025 at 6:26 AM Qu Wenruo <wqu@suse.com> wrote: >> >> There is a kernel bug report that scrub will trigger a NULL pointer >> dereference when rescue=idatacsums mount option is provided. >> >> Add a test case for such situation, to verify kernel can gracefully >> reject scrub when there is no csum tree. >> >> Signed-off-by: Qu Wenruo <wqu@suse.com> >> --- >> tests/btrfs/336 | 32 ++++++++++++++++++++++++++++++++ >> tests/btrfs/336.out | 2 ++ >> 2 files changed, 34 insertions(+) >> create mode 100755 tests/btrfs/336 >> create mode 100644 tests/btrfs/336.out >> >> diff --git a/tests/btrfs/336 b/tests/btrfs/336 >> new file mode 100755 >> index 00000000..f76a8e21 >> --- /dev/null >> +++ b/tests/btrfs/336 >> @@ -0,0 +1,32 @@ >> +#! /bin/bash >> +# SPDX-License-Identifier: GPL-2.0 >> +# Copyright (C) 2025 SUSE Linux Products GmbH. All Rights Reserved. >> +# >> +# FS QA Test 336 >> +# >> +# Make sure read-only scrub won't cause NULL pointer dereference with >> +# rescue=idatacsums mount option >> +# >> +. ./common/preamble >> +_begin_fstest auto scrub quick >> + >> +_fixed_by_kernel_commit 6aecd91a5c5b \ >> + "btrfs: avoid NULL pointer dereference if no valid extent tree" >> + >> +_require_scratch >> +_scratch_mkfs >> $seqres.full >> + >> +_try_scratch_mount "-o ro,rescue=ignoredatacsums" > /dev/null 2>&1 || >> + _notrun "rescue=ignoredatacsums mount option not supported" >> + >> +# For unpatched kernel this will cause NULL pointer dereference and crash the kernel. >> +# For patched kernel scrub will be gracefully rejected. >> +$BTRFS_UTIL_PROG scrub start -Br $SCRATCH_MNT >> $seqres.full 2>&1 > > If the scrub is supposed to fail, as the comment says, then we should > check that it fails. > Right now we're ignoring whether it succeeds or fails. Currently it indeed fails for patched kernel, but I'm not sure if it will keep so in the future. E.g. we can still properly scrub metadata chunks, and for data chunks we may even delayed the csum tree lookup so that if we got an empty data block group, we just do an early exit. Or should I do the failure check, and update the test case when the kernel behavior changes in the future? Thanks, Qu > > Otherwise it looks fine, thanks. > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] fstests: btrfs: a new test case to verify scrub and rescue=idatacsums 2025-05-12 7:50 ` Qu Wenruo @ 2025-05-12 7:54 ` Filipe Manana 2025-05-13 8:54 ` Anand Jain 0 siblings, 1 reply; 9+ messages in thread From: Filipe Manana @ 2025-05-12 7:54 UTC (permalink / raw) To: Qu Wenruo; +Cc: linux-btrfs, fstests On Mon, May 12, 2025 at 8:51 AM Qu Wenruo <wqu@suse.com> wrote: > > > > 在 2025/5/12 17:14, Filipe Manana 写道: > > On Mon, May 12, 2025 at 6:26 AM Qu Wenruo <wqu@suse.com> wrote: > >> > >> There is a kernel bug report that scrub will trigger a NULL pointer > >> dereference when rescue=idatacsums mount option is provided. > >> > >> Add a test case for such situation, to verify kernel can gracefully > >> reject scrub when there is no csum tree. > >> > >> Signed-off-by: Qu Wenruo <wqu@suse.com> > >> --- > >> tests/btrfs/336 | 32 ++++++++++++++++++++++++++++++++ > >> tests/btrfs/336.out | 2 ++ > >> 2 files changed, 34 insertions(+) > >> create mode 100755 tests/btrfs/336 > >> create mode 100644 tests/btrfs/336.out > >> > >> diff --git a/tests/btrfs/336 b/tests/btrfs/336 > >> new file mode 100755 > >> index 00000000..f76a8e21 > >> --- /dev/null > >> +++ b/tests/btrfs/336 > >> @@ -0,0 +1,32 @@ > >> +#! /bin/bash > >> +# SPDX-License-Identifier: GPL-2.0 > >> +# Copyright (C) 2025 SUSE Linux Products GmbH. All Rights Reserved. > >> +# > >> +# FS QA Test 336 > >> +# > >> +# Make sure read-only scrub won't cause NULL pointer dereference with > >> +# rescue=idatacsums mount option > >> +# > >> +. ./common/preamble > >> +_begin_fstest auto scrub quick > >> + > >> +_fixed_by_kernel_commit 6aecd91a5c5b \ > >> + "btrfs: avoid NULL pointer dereference if no valid extent tree" > >> + > >> +_require_scratch > >> +_scratch_mkfs >> $seqres.full > >> + > >> +_try_scratch_mount "-o ro,rescue=ignoredatacsums" > /dev/null 2>&1 || > >> + _notrun "rescue=ignoredatacsums mount option not supported" > >> + > >> +# For unpatched kernel this will cause NULL pointer dereference and crash the kernel. > >> +# For patched kernel scrub will be gracefully rejected. > >> +$BTRFS_UTIL_PROG scrub start -Br $SCRATCH_MNT >> $seqres.full 2>&1 > > > > If the scrub is supposed to fail, as the comment says, then we should > > check that it fails. > > Right now we're ignoring whether it succeeds or fails. > > Currently it indeed fails for patched kernel, but I'm not sure if it > will keep so in the future. > > E.g. we can still properly scrub metadata chunks, and for data chunks we > may even delayed the csum tree lookup so that if we got an empty data > block group, we just do an early exit. > > Or should I do the failure check, and update the test case when the > kernel behavior changes in the future? It should check the current expected behaviour, and if that changes one day, then update it. I always find it terribly confusing when something is called and we ignore its stdout/stderr and exit status - it makes one wonder why the command is being called, if the author forgot about checking what's supposed to happen. Thanks. > > Thanks, > Qu > > > > > > Otherwise it looks fine, thanks. > > > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] fstests: btrfs: a new test case to verify scrub and rescue=idatacsums 2025-05-12 7:54 ` Filipe Manana @ 2025-05-13 8:54 ` Anand Jain 2025-05-13 8:57 ` Qu Wenruo 0 siblings, 1 reply; 9+ messages in thread From: Anand Jain @ 2025-05-13 8:54 UTC (permalink / raw) To: Filipe Manana, Qu Wenruo; +Cc: linux-btrfs, fstests On 12/5/25 15:54, Filipe Manana wrote: > On Mon, May 12, 2025 at 8:51 AM Qu Wenruo <wqu@suse.com> wrote: >> >> >> >> 在 2025/5/12 17:14, Filipe Manana 写道: >>> On Mon, May 12, 2025 at 6:26 AM Qu Wenruo <wqu@suse.com> wrote: >>>> >>>> There is a kernel bug report that scrub will trigger a NULL pointer >>>> dereference when rescue=idatacsums mount option is provided. >>>> >>>> Add a test case for such situation, to verify kernel can gracefully >>>> reject scrub when there is no csum tree. >>>> >>>> Signed-off-by: Qu Wenruo <wqu@suse.com> >>>> --- >>>> tests/btrfs/336 | 32 ++++++++++++++++++++++++++++++++ >>>> tests/btrfs/336.out | 2 ++ >>>> 2 files changed, 34 insertions(+) >>>> create mode 100755 tests/btrfs/336 >>>> create mode 100644 tests/btrfs/336.out >>>> >>>> diff --git a/tests/btrfs/336 b/tests/btrfs/336 >>>> new file mode 100755 >>>> index 00000000..f76a8e21 >>>> --- /dev/null >>>> +++ b/tests/btrfs/336 >>>> @@ -0,0 +1,32 @@ >>>> +#! /bin/bash >>>> +# SPDX-License-Identifier: GPL-2.0 >>>> +# Copyright (C) 2025 SUSE Linux Products GmbH. All Rights Reserved. >>>> +# >>>> +# FS QA Test 336 >>>> +# >>>> +# Make sure read-only scrub won't cause NULL pointer dereference with >>>> +# rescue=idatacsums mount option >>>> +# >>>> +. ./common/preamble >>>> +_begin_fstest auto scrub quick >>>> + >>>> +_fixed_by_kernel_commit 6aecd91a5c5b \ >>>> + "btrfs: avoid NULL pointer dereference if no valid extent tree" >>>> + >>>> +_require_scratch >>>> +_scratch_mkfs >> $seqres.full >>>> + >>>> +_try_scratch_mount "-o ro,rescue=ignoredatacsums" > /dev/null 2>&1 || >>>> + _notrun "rescue=ignoredatacsums mount option not supported" >>>> + >>>> +# For unpatched kernel this will cause NULL pointer dereference and crash the kernel. >>>> +# For patched kernel scrub will be gracefully rejected. >>>> +$BTRFS_UTIL_PROG scrub start -Br $SCRATCH_MNT >> $seqres.full 2>&1 >>> >>> If the scrub is supposed to fail, as the comment says, then we should >>> check that it fails. >>> Right now we're ignoring whether it succeeds or fails. >> >> Currently it indeed fails for patched kernel, but I'm not sure if it >> will keep so in the future. >> >> E.g. we can still properly scrub metadata chunks, and for data chunks we >> may even delayed the csum tree lookup so that if we got an empty data >> block group, we just do an early exit. >> >> Or should I do the failure check, and update the test case when the >> kernel behavior changes in the future? > > It should check the current expected behaviour, and if that changes > one day, then update it. > > I always find it terribly confusing when something is called and we > ignore its stdout/stderr and exit status - it makes one wonder why the > command is being called, if the author forgot about checking what's > supposed to happen. Makes sense. As there is no way to check if the kernel has commit fix 6aecd91a5c5b testcase will crash the system. That's a bit concerning. Thanks, Anand ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] fstests: btrfs: a new test case to verify scrub and rescue=idatacsums 2025-05-13 8:54 ` Anand Jain @ 2025-05-13 8:57 ` Qu Wenruo 2025-05-13 9:57 ` Anand Jain 0 siblings, 1 reply; 9+ messages in thread From: Qu Wenruo @ 2025-05-13 8:57 UTC (permalink / raw) To: Anand Jain, Filipe Manana, Qu Wenruo; +Cc: linux-btrfs, fstests 在 2025/5/13 18:24, Anand Jain 写道: > On 12/5/25 15:54, Filipe Manana wrote: >> On Mon, May 12, 2025 at 8:51 AM Qu Wenruo <wqu@suse.com> wrote: >>> >>> >>> >>> 在 2025/5/12 17:14, Filipe Manana 写道: >>>> On Mon, May 12, 2025 at 6:26 AM Qu Wenruo <wqu@suse.com> wrote: >>>>> >>>>> There is a kernel bug report that scrub will trigger a NULL pointer >>>>> dereference when rescue=idatacsums mount option is provided. >>>>> >>>>> Add a test case for such situation, to verify kernel can gracefully >>>>> reject scrub when there is no csum tree. >>>>> >>>>> Signed-off-by: Qu Wenruo <wqu@suse.com> >>>>> --- >>>>> tests/btrfs/336 | 32 ++++++++++++++++++++++++++++++++ >>>>> tests/btrfs/336.out | 2 ++ >>>>> 2 files changed, 34 insertions(+) >>>>> create mode 100755 tests/btrfs/336 >>>>> create mode 100644 tests/btrfs/336.out >>>>> >>>>> diff --git a/tests/btrfs/336 b/tests/btrfs/336 >>>>> new file mode 100755 >>>>> index 00000000..f76a8e21 >>>>> --- /dev/null >>>>> +++ b/tests/btrfs/336 >>>>> @@ -0,0 +1,32 @@ >>>>> +#! /bin/bash >>>>> +# SPDX-License-Identifier: GPL-2.0 >>>>> +# Copyright (C) 2025 SUSE Linux Products GmbH. All Rights Reserved. >>>>> +# >>>>> +# FS QA Test 336 >>>>> +# >>>>> +# Make sure read-only scrub won't cause NULL pointer dereference with >>>>> +# rescue=idatacsums mount option >>>>> +# >>>>> +. ./common/preamble >>>>> +_begin_fstest auto scrub quick >>>>> + >>>>> +_fixed_by_kernel_commit 6aecd91a5c5b \ >>>>> + "btrfs: avoid NULL pointer dereference if no valid extent >>>>> tree" >>>>> + >>>>> +_require_scratch >>>>> +_scratch_mkfs >> $seqres.full >>>>> + >>>>> +_try_scratch_mount "-o ro,rescue=ignoredatacsums" > /dev/null 2>&1 || >>>>> + _notrun "rescue=ignoredatacsums mount option not supported" >>>>> + >>>>> +# For unpatched kernel this will cause NULL pointer dereference >>>>> and crash the kernel. >>>>> +# For patched kernel scrub will be gracefully rejected. >>>>> +$BTRFS_UTIL_PROG scrub start -Br $SCRATCH_MNT >> $seqres.full 2>&1 >>>> >>>> If the scrub is supposed to fail, as the comment says, then we should >>>> check that it fails. >>>> Right now we're ignoring whether it succeeds or fails. >>> >>> Currently it indeed fails for patched kernel, but I'm not sure if it >>> will keep so in the future. >>> >>> E.g. we can still properly scrub metadata chunks, and for data chunks we >>> may even delayed the csum tree lookup so that if we got an empty data >>> block group, we just do an early exit. >>> >>> Or should I do the failure check, and update the test case when the >>> kernel behavior changes in the future? >> >> It should check the current expected behaviour, and if that changes >> one day, then update it. >> >> I always find it terribly confusing when something is called and we >> ignore its stdout/stderr and exit status - it makes one wonder why the >> command is being called, if the author forgot about checking what's >> supposed to happen. > > Makes sense. > > As there is no way to check if the kernel has commit fix 6aecd91a5c5b > testcase will crash the system. That's a bit concerning. In that case you can add the test case to dangerous group at merge time. Thanks, Qu > > Thanks, Anand > > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] fstests: btrfs: a new test case to verify scrub and rescue=idatacsums 2025-05-13 8:57 ` Qu Wenruo @ 2025-05-13 9:57 ` Anand Jain 2025-05-13 10:57 ` Qu Wenruo 0 siblings, 1 reply; 9+ messages in thread From: Anand Jain @ 2025-05-13 9:57 UTC (permalink / raw) To: Qu Wenruo, Filipe Manana, Qu Wenruo; +Cc: linux-btrfs, fstests On 13/5/25 16:57, Qu Wenruo wrote: > > > 在 2025/5/13 18:24, Anand Jain 写道: >> On 12/5/25 15:54, Filipe Manana wrote: >>> On Mon, May 12, 2025 at 8:51 AM Qu Wenruo <wqu@suse.com> wrote: >>>> >>>> >>>> >>>> 在 2025/5/12 17:14, Filipe Manana 写道: >>>>> On Mon, May 12, 2025 at 6:26 AM Qu Wenruo <wqu@suse.com> wrote: >>>>>> >>>>>> There is a kernel bug report that scrub will trigger a NULL pointer >>>>>> dereference when rescue=idatacsums mount option is provided. >>>>>> >>>>>> Add a test case for such situation, to verify kernel can gracefully >>>>>> reject scrub when there is no csum tree. >>>>>> >>>>>> Signed-off-by: Qu Wenruo <wqu@suse.com> >>>>>> --- >>>>>> tests/btrfs/336 | 32 ++++++++++++++++++++++++++++++++ >>>>>> tests/btrfs/336.out | 2 ++ >>>>>> 2 files changed, 34 insertions(+) >>>>>> create mode 100755 tests/btrfs/336 >>>>>> create mode 100644 tests/btrfs/336.out >>>>>> >>>>>> diff --git a/tests/btrfs/336 b/tests/btrfs/336 >>>>>> new file mode 100755 >>>>>> index 00000000..f76a8e21 >>>>>> --- /dev/null >>>>>> +++ b/tests/btrfs/336 >>>>>> @@ -0,0 +1,32 @@ >>>>>> +#! /bin/bash >>>>>> +# SPDX-License-Identifier: GPL-2.0 >>>>>> +# Copyright (C) 2025 SUSE Linux Products GmbH. All Rights Reserved. >>>>>> +# >>>>>> +# FS QA Test 336 >>>>>> +# >>>>>> +# Make sure read-only scrub won't cause NULL pointer dereference >>>>>> with >>>>>> +# rescue=idatacsums mount option >>>>>> +# >>>>>> +. ./common/preamble >>>>>> +_begin_fstest auto scrub quick >>>>>> + >>>>>> +_fixed_by_kernel_commit 6aecd91a5c5b \ >>>>>> + "btrfs: avoid NULL pointer dereference if no valid extent >>>>>> tree" >>>>>> + >>>>>> +_require_scratch >>>>>> +_scratch_mkfs >> $seqres.full >>>>>> + >>>>>> +_try_scratch_mount "-o ro,rescue=ignoredatacsums" > /dev/null >>>>>> 2>&1 || >>>>>> + _notrun "rescue=ignoredatacsums mount option not supported" >>>>>> + >>>>>> +# For unpatched kernel this will cause NULL pointer dereference >>>>>> and crash the kernel. >>>>>> +# For patched kernel scrub will be gracefully rejected. >>>>>> +$BTRFS_UTIL_PROG scrub start -Br $SCRATCH_MNT >> $seqres.full 2>&1 >>>>> >>>>> If the scrub is supposed to fail, as the comment says, then we should >>>>> check that it fails. >>>>> Right now we're ignoring whether it succeeds or fails. >>>> >>>> Currently it indeed fails for patched kernel, but I'm not sure if it >>>> will keep so in the future. >>>> >>>> E.g. we can still properly scrub metadata chunks, and for data >>>> chunks we >>>> may even delayed the csum tree lookup so that if we got an empty data >>>> block group, we just do an early exit. >>>> >>>> Or should I do the failure check, and update the test case when the >>>> kernel behavior changes in the future? >>> >>> It should check the current expected behaviour, and if that changes >>> one day, then update it. >>> >>> I always find it terribly confusing when something is called and we >>> ignore its stdout/stderr and exit status - it makes one wonder why the >>> command is being called, if the author forgot about checking what's >>> supposed to happen. >> >> Makes sense. >> >> As there is no way to check if the kernel has commit fix 6aecd91a5c5b >> testcase will crash the system. That's a bit concerning. > > In that case you can add the test case to dangerous group at merge time. > Oh, right — we can use dangerous. I thought you were still sending v2 with Filipe's review comments? ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] fstests: btrfs: a new test case to verify scrub and rescue=idatacsums 2025-05-13 9:57 ` Anand Jain @ 2025-05-13 10:57 ` Qu Wenruo 0 siblings, 0 replies; 9+ messages in thread From: Qu Wenruo @ 2025-05-13 10:57 UTC (permalink / raw) To: Anand Jain, Filipe Manana, Qu Wenruo; +Cc: linux-btrfs, fstests 在 2025/5/13 19:27, Anand Jain 写道: [...] >>> >>> Makes sense. >>> >>> As there is no way to check if the kernel has commit fix 6aecd91a5c5b >>> testcase will crash the system. That's a bit concerning. >> >> In that case you can add the test case to dangerous group at merge time. >> > > Oh, right — we can use dangerous. > > I thought you were still sending v2 with Filipe's review comments? > Well, you reviewed the v2 version and applied, thus I guess it's easier to add the group on your side: https://lore.kernel.org/linux-btrfs/60d18eaa-c6b0-45f3-952a-437abfd25636@oracle.com/ Thanks, Qu ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2025-05-13 10:57 UTC | newest] Thread overview: 9+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2025-05-12 5:25 [PATCH] fstests: btrfs: a new test case to verify scrub and rescue=idatacsums Qu Wenruo 2025-05-12 5:59 ` Johannes Thumshirn 2025-05-12 7:44 ` Filipe Manana 2025-05-12 7:50 ` Qu Wenruo 2025-05-12 7:54 ` Filipe Manana 2025-05-13 8:54 ` Anand Jain 2025-05-13 8:57 ` Qu Wenruo 2025-05-13 9:57 ` Anand Jain 2025-05-13 10:57 ` Qu Wenruo
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox