diff mbox series

[2/2] README: Add tiny note concerning required scratch devs for btrfs testing

Message ID 20230131123839.16084-3-gniebler@suse.com (mailing list archive)
State New, archived
Headers show
Series README: Add distro and btrfs testing info | expand

Commit Message

Gabriel Niebler Jan. 31, 2023, 12:38 p.m. UTC
Signed-off-by: Gabriel Niebler <gniebler@suse.com>
---
 README | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Zorro Lang Feb. 6, 2023, 2:52 p.m. UTC | #1
On Tue, Jan 31, 2023 at 01:38:39PM +0100, Gabriel Niebler wrote:
> Signed-off-by: Gabriel Niebler <gniebler@suse.com>
> ---
>  README | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/README b/README
> index 008d3875..574cdd34 100644
> --- a/README
> +++ b/README
> @@ -127,7 +127,7 @@ Setup Environment
>      - device contents will be destroyed.
>  
>  4. (optional) Create SCRATCH device pool.
> -    - needed for BTRFS testing
> +    - needed for BTRFS testing (some tests require up to 5 disks of 10GB each)

Not sure about this part, so btrfs recommend 5 disks of 10GB each in
SCRATCH_DEV_POOL, to run all btrfs related tests? Does anyone know that?
Or can you provide the subcase names which need "5 disks of 10GB each",
to help to check and review?

P.S. I'm thinking about if this "(...)" should be moved to below item.
                                                        vvvvv
>      - specifies 3 or more independent SCRATCH devices via the SCRATCH_DEV_POOL
>        variable e.g SCRATCH_DEV_POOL="/dev/sda /dev/sdb /dev/sdc"
>      - device contents will be destroyed.
> -- 
> 2.39.1
>
Gabriel Niebler Feb. 6, 2023, 4:29 p.m. UTC | #2
Am 06.02.23 um 15:52 schrieb Zorro Lang:
> On Tue, Jan 31, 2023 at 01:38:39PM +0100, Gabriel Niebler wrote:
>> Signed-off-by: Gabriel Niebler <gniebler@suse.com>
>> ---
>>   README | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/README b/README
>> index 008d3875..574cdd34 100644
>> --- a/README
>> +++ b/README
>> @@ -127,7 +127,7 @@ Setup Environment
>>       - device contents will be destroyed.
>>   
>>   4. (optional) Create SCRATCH device pool.
>> -    - needed for BTRFS testing
>> +    - needed for BTRFS testing (some tests require up to 5 disks of 10GB each)
> 
> Not sure about this part, so btrfs recommend 5 disks of 10GB each in
> SCRATCH_DEV_POOL, to run all btrfs related tests? Does anyone know that?
> Or can you provide the subcase names which need "5 disks of 10GB each",
> to help to check and review?

Of course (and thanks for asking, as it turns out my recollection was 
slightly wrong on that one):

To begin with, btrfs/011[1] states the "5 disks" requirement in the 
lengthy comment at the top of the file:
"""
# The amount of tests done depends on the number of devices in the
# SCRATCH_DEV_POOL. For full test coverage, at least 5 devices should
# be available (e.g. 5 partitions).
""
... but it doesn't say anything about device size.

btrfs/027[2] however checks the presence of 5 devices in 
$SCRATCH_DEV_POOL directly in code and also runs a check to ensure that 
all of these devices are *of the same size*.

And then there are at least two tests that require $SCRATCH_DEV to be 
10GB or more in size:
- btrfs/079[3], which writes a 10G file to $SCRATCH_MNT and
- btrfs/253[4], which directly creates a 10G FS on $SCRATCH_DEV.

*Taken together*, this means that for full btrfs test coverage, one 
needs a $SCRATCH_DEV_POOL with at least 5 devices of equal size in it 
and that size has to be at least 10GB.

But that makes the remark wrong, strictly speaking, as there's no single 
test that requires "at least 5 devices of 10GB each".

How about this: "(for full btrfs test coverage, use at least 5 devices 
of equal size and at least 10GB)"

> P.S. I'm thinking about if this "(...)" should be moved to below item.
>                                                          vvvvv
>>       - specifies 3 or more independent SCRATCH devices via the SCRATCH_DEV_POOL
>>         variable e.g SCRATCH_DEV_POOL="/dev/sda /dev/sdb /dev/sdc"

Fine by me! :-)

[1]: 
https://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git/tree/tests/btrfs/011#n10
[2]: 
https://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git/tree/tests/btrfs/027#n20
[3]: 
https://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git/tree/tests/btrfs/079#n44
[4]: 
https://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git/tree/tests/btrfs/253#n90
Zorro Lang Feb. 18, 2023, 6:26 a.m. UTC | #3
On Mon, Feb 06, 2023 at 05:29:14PM +0100, Gabriel Niebler wrote:
> Am 06.02.23 um 15:52 schrieb Zorro Lang:
> > On Tue, Jan 31, 2023 at 01:38:39PM +0100, Gabriel Niebler wrote:
> > > Signed-off-by: Gabriel Niebler <gniebler@suse.com>
> > > ---
> > >   README | 2 +-
> > >   1 file changed, 1 insertion(+), 1 deletion(-)
> > > 
> > > diff --git a/README b/README
> > > index 008d3875..574cdd34 100644
> > > --- a/README
> > > +++ b/README
> > > @@ -127,7 +127,7 @@ Setup Environment
> > >       - device contents will be destroyed.
> > >   4. (optional) Create SCRATCH device pool.
> > > -    - needed for BTRFS testing
> > > +    - needed for BTRFS testing (some tests require up to 5 disks of 10GB each)
> > 
> > Not sure about this part, so btrfs recommend 5 disks of 10GB each in
> > SCRATCH_DEV_POOL, to run all btrfs related tests? Does anyone know that?
> > Or can you provide the subcase names which need "5 disks of 10GB each",
> > to help to check and review?
> 
> Of course (and thanks for asking, as it turns out my recollection was
> slightly wrong on that one):
> 
> To begin with, btrfs/011[1] states the "5 disks" requirement in the lengthy
> comment at the top of the file:
> """
> # The amount of tests done depends on the number of devices in the
> # SCRATCH_DEV_POOL. For full test coverage, at least 5 devices should
> # be available (e.g. 5 partitions).
> ""
> ... but it doesn't say anything about device size.
> 
> btrfs/027[2] however checks the presence of 5 devices in $SCRATCH_DEV_POOL
> directly in code and also runs a check to ensure that all of these devices
> are *of the same size*.
> 
> And then there are at least two tests that require $SCRATCH_DEV to be 10GB
> or more in size:
> - btrfs/079[3], which writes a 10G file to $SCRATCH_MNT and
> - btrfs/253[4], which directly creates a 10G FS on $SCRATCH_DEV.
> 
> *Taken together*, this means that for full btrfs test coverage, one needs a
> $SCRATCH_DEV_POOL with at least 5 devices of equal size in it and that size
> has to be at least 10GB.
> 
> But that makes the remark wrong, strictly speaking, as there's no single
> test that requires "at least 5 devices of 10GB each".
> 
> How about this: "(for full btrfs test coverage, use at least 5 devices of
> equal size and at least 10GB)"

Even for now 10GB is enough, but we can't always assue that. There's not a clear
restriction about that. I think we can skip this sub-patch. At least we don't
give others a recommendation which isn't assured by ourselves. So how about only
merge the 1st patch.

> 
> > P.S. I'm thinking about if this "(...)" should be moved to below item.
> >                                                          vvvvv
> > >       - specifies 3 or more independent SCRATCH devices via the SCRATCH_DEV_POOL
> > >         variable e.g SCRATCH_DEV_POOL="/dev/sda /dev/sdb /dev/sdc"
> 
> Fine by me! :-)
> 
> [1]: https://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git/tree/tests/btrfs/011#n10
> [2]: https://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git/tree/tests/btrfs/027#n20
> [3]: https://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git/tree/tests/btrfs/079#n44
> [4]: https://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git/tree/tests/btrfs/253#n90
>
Gabriel Niebler Feb. 22, 2023, 5:24 p.m. UTC | #4
Am 18.02.23 um 07:26 schrieb Zorro Lang:
> On Mon, Feb 06, 2023 at 05:29:14PM +0100, Gabriel Niebler wrote:
>> Am 06.02.23 um 15:52 schrieb Zorro Lang:
>>> On Tue, Jan 31, 2023 at 01:38:39PM +0100, Gabriel Niebler wrote:
>>>> Signed-off-by: Gabriel Niebler <gniebler@suse.com>
>>>> ---
>>>>    README | 2 +-
>>>>    1 file changed, 1 insertion(+), 1 deletion(-)
>>>>
>>>> diff --git a/README b/README
>>>> index 008d3875..574cdd34 100644
>>>> --- a/README
>>>> +++ b/README
>>>> @@ -127,7 +127,7 @@ Setup Environment
>>>>        - device contents will be destroyed.
>>>>    4. (optional) Create SCRATCH device pool.
>>>> -    - needed for BTRFS testing
>>>> +    - needed for BTRFS testing (some tests require up to 5 disks of 10GB each)
>>>
>>> Not sure about this part, so btrfs recommend 5 disks of 10GB each in
>>> SCRATCH_DEV_POOL, to run all btrfs related tests? Does anyone know that?
>>> Or can you provide the subcase names which need "5 disks of 10GB each",
>>> to help to check and review?
>>
>> Of course (and thanks for asking, as it turns out my recollection was
>> slightly wrong on that one):
>>
>> To begin with, btrfs/011[1] states the "5 disks" requirement in the lengthy
>> comment at the top of the file:
>> """
>> # The amount of tests done depends on the number of devices in the
>> # SCRATCH_DEV_POOL. For full test coverage, at least 5 devices should
>> # be available (e.g. 5 partitions).
>> ""
>> ... but it doesn't say anything about device size.
>>
>> btrfs/027[2] however checks the presence of 5 devices in $SCRATCH_DEV_POOL
>> directly in code and also runs a check to ensure that all of these devices
>> are *of the same size*.
>>
>> And then there are at least two tests that require $SCRATCH_DEV to be 10GB
>> or more in size:
>> - btrfs/079[3], which writes a 10G file to $SCRATCH_MNT and
>> - btrfs/253[4], which directly creates a 10G FS on $SCRATCH_DEV.
>>
>> *Taken together*, this means that for full btrfs test coverage, one needs a
>> $SCRATCH_DEV_POOL with at least 5 devices of equal size in it and that size
>> has to be at least 10GB.
>>
>> But that makes the remark wrong, strictly speaking, as there's no single
>> test that requires "at least 5 devices of 10GB each".
>>
>> How about this: "(for full btrfs test coverage, use at least 5 devices of
>> equal size and at least 10GB)"
> 
> Even for now 10GB is enough, but we can't always assue that. There's not a clear
> restriction about that. I think we can skip this sub-patch. At least we don't
> give others a recommendation which isn't assured by ourselves. So how about only
> merge the 1st patch.

Fine by me. Users will figure it out when running the tests and reading 
the skip reasons.
diff mbox series

Patch

diff --git a/README b/README
index 008d3875..574cdd34 100644
--- a/README
+++ b/README
@@ -127,7 +127,7 @@  Setup Environment
     - device contents will be destroyed.
 
 4. (optional) Create SCRATCH device pool.
-    - needed for BTRFS testing
+    - needed for BTRFS testing (some tests require up to 5 disks of 10GB each)
     - specifies 3 or more independent SCRATCH devices via the SCRATCH_DEV_POOL
       variable e.g SCRATCH_DEV_POOL="/dev/sda /dev/sdb /dev/sdc"
     - device contents will be destroyed.