FS/XFS testing framework
 help / color / mirror / Atom feed
* [PATCH -v2 1/2] ext4/045: use the large_dir feature to fix test failures with a 1k block size
@ 2024-06-11 22:26 Theodore Ts'o
  2024-06-11 22:26 ` [PATCH -v2 2/2] generic/455: skip the test if the file system doesn't support journaling Theodore Ts'o
  2024-06-17  7:26 ` [PATCH -v2 1/2] ext4/045: use the large_dir feature to fix test failures with a 1k block size Zorro Lang
  0 siblings, 2 replies; 4+ messages in thread
From: Theodore Ts'o @ 2024-06-11 22:26 UTC (permalink / raw)
  To: fstests; +Cc: Theodore Ts'o

If the file system has a 1k blocksize, this test will fail without the
large_dir file system, because the depth of the dir_index tree needs
to be greater than 2.  So enable the large_dir unconditionally, which
also gives us better test coverage of the large_dir code paths.

As a result of requiring large_dir, this test will get skipped if the
kernel is older than 4.13 --- which was released in 2017; and that
seems to be reasonable at this point.

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
---
 tests/ext4/045 | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tests/ext4/045 b/tests/ext4/045
index 4f0ad4aa7..a90ae1ba3 100755
--- a/tests/ext4/045
+++ b/tests/ext4/045
@@ -20,6 +20,7 @@ LONG_DIR=2
 _supported_fs ext4
 
 _require_scratch
+_require_scratch_ext4_feature large_dir
 _require_test_program "t_create_short_dirs"
 _require_test_program "t_create_long_dirs"
 _require_dumpe2fs
@@ -42,7 +43,7 @@ workout()
        echo "Num of dirs to create: $1, Dir name len: $dir_name_len, " \
                "Parent dir: $3" >> $seqres.full
 
-       _scratch_mkfs "-O extent,dir_nlink,dir_index -I 256" >> $seqres.full 2>&1
+       _scratch_mkfs "-O extent,dir_nlink,dir_index,large_dir -I 256" >> $seqres.full 2>&1
        _scratch_mount
 
        # create directories
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [PATCH -v2 2/2] generic/455: skip the test if the file system doesn't support journaling
  2024-06-11 22:26 [PATCH -v2 1/2] ext4/045: use the large_dir feature to fix test failures with a 1k block size Theodore Ts'o
@ 2024-06-11 22:26 ` Theodore Ts'o
  2024-06-17  7:41   ` Zorro Lang
  2024-06-17  7:26 ` [PATCH -v2 1/2] ext4/045: use the large_dir feature to fix test failures with a 1k block size Zorro Lang
  1 sibling, 1 reply; 4+ messages in thread
From: Theodore Ts'o @ 2024-06-11 22:26 UTC (permalink / raw)
  To: fstests; +Cc: Theodore Ts'o

This test uses dm-log-writes to test power fail scenarios, so it won't
work if the file system doesn't support metadata journaling.

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
---
 tests/generic/455 | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/tests/generic/455 b/tests/generic/455
index da803de08..6dce8a659 100755
--- a/tests/generic/455
+++ b/tests/generic/455
@@ -65,6 +65,9 @@ _log_writes_init $DMTHIN_VOL_DEV
 
 _log_writes_mkfs >> $seqres.full 2>&1
 
+# This test requires metadata journaling since it simulates a power failure
+_require_metadata_journaling "$LOGWRITES_DMDEV"
+
 # Log writes emulates discard support, turn it on for maximum crying.
 _log_writes_mount -o discard
 
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: [PATCH -v2 1/2] ext4/045: use the large_dir feature to fix test failures with a 1k block size
  2024-06-11 22:26 [PATCH -v2 1/2] ext4/045: use the large_dir feature to fix test failures with a 1k block size Theodore Ts'o
  2024-06-11 22:26 ` [PATCH -v2 2/2] generic/455: skip the test if the file system doesn't support journaling Theodore Ts'o
@ 2024-06-17  7:26 ` Zorro Lang
  1 sibling, 0 replies; 4+ messages in thread
From: Zorro Lang @ 2024-06-17  7:26 UTC (permalink / raw)
  To: Theodore Ts'o; +Cc: fstests

On Tue, Jun 11, 2024 at 06:26:58PM -0400, Theodore Ts'o wrote:
> If the file system has a 1k blocksize, this test will fail without the
> large_dir file system, because the depth of the dir_index tree needs
> to be greater than 2.  So enable the large_dir unconditionally, which
> also gives us better test coverage of the large_dir code paths.
> 
> As a result of requiring large_dir, this test will get skipped if the
> kernel is older than 4.13 --- which was released in 2017; and that
> seems to be reasonable at this point.

Makes sense to me,

Reviewed-by: Zorro Lang <zlang@redhat.com>

> 
> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
> ---
>  tests/ext4/045 | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/tests/ext4/045 b/tests/ext4/045
> index 4f0ad4aa7..a90ae1ba3 100755
> --- a/tests/ext4/045
> +++ b/tests/ext4/045
> @@ -20,6 +20,7 @@ LONG_DIR=2
>  _supported_fs ext4
>  
>  _require_scratch
> +_require_scratch_ext4_feature large_dir
>  _require_test_program "t_create_short_dirs"
>  _require_test_program "t_create_long_dirs"
>  _require_dumpe2fs
> @@ -42,7 +43,7 @@ workout()
>         echo "Num of dirs to create: $1, Dir name len: $dir_name_len, " \
>                 "Parent dir: $3" >> $seqres.full
>  
> -       _scratch_mkfs "-O extent,dir_nlink,dir_index -I 256" >> $seqres.full 2>&1
> +       _scratch_mkfs "-O extent,dir_nlink,dir_index,large_dir -I 256" >> $seqres.full 2>&1




>         _scratch_mount
>  
>         # create directories
> -- 
> 2.43.0
> 
> 


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH -v2 2/2] generic/455: skip the test if the file system doesn't support journaling
  2024-06-11 22:26 ` [PATCH -v2 2/2] generic/455: skip the test if the file system doesn't support journaling Theodore Ts'o
@ 2024-06-17  7:41   ` Zorro Lang
  0 siblings, 0 replies; 4+ messages in thread
From: Zorro Lang @ 2024-06-17  7:41 UTC (permalink / raw)
  To: Theodore Ts'o; +Cc: fstests

On Tue, Jun 11, 2024 at 06:26:59PM -0400, Theodore Ts'o wrote:
> This test uses dm-log-writes to test power fail scenarios, so it won't
> work if the file system doesn't support metadata journaling.
> 
> Signed-off-by: Theodore Ts'o <tytso@mit.edu>
> ---
>  tests/generic/455 | 3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/tests/generic/455 b/tests/generic/455
> index da803de08..6dce8a659 100755
> --- a/tests/generic/455
> +++ b/tests/generic/455
> @@ -65,6 +65,9 @@ _log_writes_init $DMTHIN_VOL_DEV
>  
>  _log_writes_mkfs >> $seqres.full 2>&1
>  
> +# This test requires metadata journaling since it simulates a power failure
> +_require_metadata_journaling "$LOGWRITES_DMDEV"

Good to me, Thanks!

Reviewed-by: Zorro Lang <zlang@redhat.com>

> +
>  # Log writes emulates discard support, turn it on for maximum crying.
>  _log_writes_mount -o discard
>  
> -- 
> 2.43.0
> 
> 


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2024-06-17  7:41 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-11 22:26 [PATCH -v2 1/2] ext4/045: use the large_dir feature to fix test failures with a 1k block size Theodore Ts'o
2024-06-11 22:26 ` [PATCH -v2 2/2] generic/455: skip the test if the file system doesn't support journaling Theodore Ts'o
2024-06-17  7:41   ` Zorro Lang
2024-06-17  7:26 ` [PATCH -v2 1/2] ext4/045: use the large_dir feature to fix test failures with a 1k block size Zorro Lang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox