mbox series

[v2,0/8] fstests: add checks for testing zoned btrfs

Message ID 20210811151232.3713733-1-naohiro.aota@wdc.com (mailing list archive)
Headers show
Series fstests: add checks for testing zoned btrfs | expand

Message

Naohiro Aota Aug. 11, 2021, 3:12 p.m. UTC
This series revisit my old series to test zoned btrfs [1].

[1] https://lore.kernel.org/fstests/PH0PR04MB7416870032582BC2A8FC5AD99B299@PH0PR04MB7416.namprd04.prod.outlook.com/T/

Several tests are failing on zoned btrfs, but actually they are invalid.
There are two reasons of the failures. One is creating too small
filesystem. Since zoned btrfs needs at lease 5 zones (= 1.25 GB if zone
size = 256MB) to create a filesystem, tests creating e.g., 1 GB filesystem
will fail.

The other reason is lacking of zone support of some dm targets and loop
device. So, they need to skip the test if the testing device is zoned.

Patches 1 to 4 handle the too small file system failure.

And, patches 5 to 8 add checks for tests requiring non-zoned devices.

Naohiro Aota (8):
  common/rc: introduce minimal fs size check
  common/rc: fix blocksize detection for btrfs
  btrfs/057: use _scratch_mkfs_sized to set filesystem size
  fstests: btrfs: add minimal file system size check
  common: add zoned block device checks
  shared/032: add check for zoned block device
  fstests: btrfs: add checks for zoned block device
  fstests: generic: add checks for zoned block device

 README            |  4 ++++
 common/btrfs      | 18 ++++++++++++++++++
 common/dmerror    |  3 +++
 common/dmhugedisk |  3 +++
 common/rc         | 24 +++++++++++++++++++++++-
 tests/btrfs/003   | 13 +++++++++----
 tests/btrfs/011   | 21 ++++++++++++---------
 tests/btrfs/012   |  2 ++
 tests/btrfs/023   |  2 ++
 tests/btrfs/049   |  2 ++
 tests/btrfs/057   |  2 +-
 tests/btrfs/116   |  2 ++
 tests/btrfs/124   |  4 ++++
 tests/btrfs/125   |  2 ++
 tests/btrfs/131   |  2 ++
 tests/btrfs/136   |  2 ++
 tests/btrfs/140   |  2 ++
 tests/btrfs/141   |  1 +
 tests/btrfs/142   |  1 +
 tests/btrfs/143   |  1 +
 tests/btrfs/148   |  2 ++
 tests/btrfs/150   |  1 +
 tests/btrfs/151   |  1 +
 tests/btrfs/156   |  1 +
 tests/btrfs/157   |  3 +++
 tests/btrfs/158   |  3 +++
 tests/btrfs/175   |  1 +
 tests/btrfs/194   |  2 +-
 tests/btrfs/195   |  8 ++++++++
 tests/btrfs/197   |  1 +
 tests/btrfs/198   |  1 +
 tests/btrfs/215   |  1 +
 tests/btrfs/236   | 33 ++++++++++++++++++++-------------
 tests/generic/108 |  1 +
 tests/generic/471 |  1 +
 tests/generic/570 |  1 +
 tests/shared/032  |  2 ++
 37 files changed, 145 insertions(+), 29 deletions(-)

Comments

David Sterba Aug. 12, 2021, 3:41 p.m. UTC | #1
On Thu, Aug 12, 2021 at 12:12:24AM +0900, Naohiro Aota wrote:
> This series revisit my old series to test zoned btrfs [1].
> 
> [1] https://lore.kernel.org/fstests/PH0PR04MB7416870032582BC2A8FC5AD99B299@PH0PR04MB7416.namprd04.prod.outlook.com/T/
> 
> Several tests are failing on zoned btrfs, but actually they are invalid.
> There are two reasons of the failures. One is creating too small
> filesystem. Since zoned btrfs needs at lease 5 zones (= 1.25 GB if zone
> size = 256MB) to create a filesystem, tests creating e.g., 1 GB filesystem
> will fail.
> 
> The other reason is lacking of zone support of some dm targets and loop
> device. So, they need to skip the test if the testing device is zoned.
> 
> Patches 1 to 4 handle the too small file system failure.
> 
> And, patches 5 to 8 add checks for tests requiring non-zoned devices.
> 
> Naohiro Aota (8):
>   common/rc: introduce minimal fs size check
>   common/rc: fix blocksize detection for btrfs
>   btrfs/057: use _scratch_mkfs_sized to set filesystem size
>   fstests: btrfs: add minimal file system size check
>   common: add zoned block device checks
>   shared/032: add check for zoned block device
>   fstests: btrfs: add checks for zoned block device
>   fstests: generic: add checks for zoned block device

I did a light review of the patches (no actual testing), all seem to be
doing the right thing regarding the special cases zoned mode needs, and
not changing the default use case.
Eryu Guan Aug. 15, 2021, 3:21 p.m. UTC | #2
On Thu, Aug 12, 2021 at 12:12:24AM +0900, Naohiro Aota wrote:
> This series revisit my old series to test zoned btrfs [1].
> 
> [1] https://lore.kernel.org/fstests/PH0PR04MB7416870032582BC2A8FC5AD99B299@PH0PR04MB7416.namprd04.prod.outlook.com/T/
> 
> Several tests are failing on zoned btrfs, but actually they are invalid.
> There are two reasons of the failures. One is creating too small
> filesystem. Since zoned btrfs needs at lease 5 zones (= 1.25 GB if zone
> size = 256MB) to create a filesystem, tests creating e.g., 1 GB filesystem
> will fail.
> 
> The other reason is lacking of zone support of some dm targets and loop
> device. So, they need to skip the test if the testing device is zoned.
> 
> Patches 1 to 4 handle the too small file system failure.

I've applied patch 1-4 and 6.

Thanks,
Eryu

> 
> And, patches 5 to 8 add checks for tests requiring non-zoned devices.
> 
> Naohiro Aota (8):
>   common/rc: introduce minimal fs size check
>   common/rc: fix blocksize detection for btrfs
>   btrfs/057: use _scratch_mkfs_sized to set filesystem size
>   fstests: btrfs: add minimal file system size check
>   common: add zoned block device checks
>   shared/032: add check for zoned block device
>   fstests: btrfs: add checks for zoned block device
>   fstests: generic: add checks for zoned block device
> 
>  README            |  4 ++++
>  common/btrfs      | 18 ++++++++++++++++++
>  common/dmerror    |  3 +++
>  common/dmhugedisk |  3 +++
>  common/rc         | 24 +++++++++++++++++++++++-
>  tests/btrfs/003   | 13 +++++++++----
>  tests/btrfs/011   | 21 ++++++++++++---------
>  tests/btrfs/012   |  2 ++
>  tests/btrfs/023   |  2 ++
>  tests/btrfs/049   |  2 ++
>  tests/btrfs/057   |  2 +-
>  tests/btrfs/116   |  2 ++
>  tests/btrfs/124   |  4 ++++
>  tests/btrfs/125   |  2 ++
>  tests/btrfs/131   |  2 ++
>  tests/btrfs/136   |  2 ++
>  tests/btrfs/140   |  2 ++
>  tests/btrfs/141   |  1 +
>  tests/btrfs/142   |  1 +
>  tests/btrfs/143   |  1 +
>  tests/btrfs/148   |  2 ++
>  tests/btrfs/150   |  1 +
>  tests/btrfs/151   |  1 +
>  tests/btrfs/156   |  1 +
>  tests/btrfs/157   |  3 +++
>  tests/btrfs/158   |  3 +++
>  tests/btrfs/175   |  1 +
>  tests/btrfs/194   |  2 +-
>  tests/btrfs/195   |  8 ++++++++
>  tests/btrfs/197   |  1 +
>  tests/btrfs/198   |  1 +
>  tests/btrfs/215   |  1 +
>  tests/btrfs/236   | 33 ++++++++++++++++++++-------------
>  tests/generic/108 |  1 +
>  tests/generic/471 |  1 +
>  tests/generic/570 |  1 +
>  tests/shared/032  |  2 ++
>  37 files changed, 145 insertions(+), 29 deletions(-)
> 
> -- 
> 2.32.0