All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Theodore Ts'o" <tytso@mit.edu>
To: fstests@vger.kernel.org
Cc: "Theodore Ts'o" <tytso@mit.edu>, Zorro Lang <zlang@redhat.com>
Subject: [PATCH -v4 7/7] ext4: create file systems with the encrypt feature as necessary
Date: Thu, 30 Jun 2022 10:46:37 -0400	[thread overview]
Message-ID: <20220630144637.478568-8-tytso@mit.edu> (raw)
In-Reply-To: <20220630144637.478568-1-tytso@mit.edu>

The linux kernel commit 5f41fdaea63d ("ext4: only allow
test_dummy_encryption when supported") the kernel will reject mounts
with the test_dummy_encryption option if the ext4 file system does not
have the encrypt feature enabled.

There are a handful of tests (ext4/003, ext4/035, ext4/306, and
generic/260) which will format the scratch file system using a
hard-coded set of mkfs.ext4 parameters ignoring the MKFS_OPTION that
is set by the file system test config.

For file system configs which includes test_dummy_encryption in
MOUNT_OPTIONS and "-O encrypt" in MKFS_OPTIONS, we need to test for
test_dummy_encryption and force the hard-coded mkfs options to enable
the encrypt feature.

Signed-off-by: Theodore Ts'o <tytso@mit.edu>
Reviewed-by: Zorro Lang <zlang@redhat.com>
---
 tests/ext4/003    | 6 +++++-
 tests/ext4/035    | 6 +++++-
 tests/ext4/306    | 5 ++++-
 tests/generic/260 | 3 +++
 4 files changed, 17 insertions(+), 3 deletions(-)

diff --git a/tests/ext4/003 b/tests/ext4/003
index 773bcb03..8ac467b8 100755
--- a/tests/ext4/003
+++ b/tests/ext4/003
@@ -27,7 +27,11 @@ _require_scratch
 _require_scratch_ext4_feature "bigalloc"
 
 BLOCK_SIZE=$(get_page_size)
-$MKFS_EXT4_PROG -F -b $BLOCK_SIZE -O bigalloc -C $(($BLOCK_SIZE * 16)) -g 256 $SCRATCH_DEV 512m \
+features=bigalloc
+if echo "${MOUNT_OPTIONS}" | grep -q 'test_dummy_encryption' ; then
+    features+=",encrypt"
+fi
+$MKFS_EXT4_PROG -F -b $BLOCK_SIZE -O $features -C $(($BLOCK_SIZE * 16)) -g 256 $SCRATCH_DEV 512m \
 	>> $seqres.full 2>&1
 _scratch_mount
 
diff --git a/tests/ext4/035 b/tests/ext4/035
index 1f26e766..a8278b0e 100755
--- a/tests/ext4/035
+++ b/tests/ext4/035
@@ -25,7 +25,11 @@ _require_scratch
 _exclude_scratch_mount_option dax
 _require_command "$RESIZE2FS_PROG" resize2fs
 
-$MKFS_EXT4_PROG -F -b 1024 -E "resize=262144" $SCRATCH_DEV 32768 >> $seqres.full 2>&1
+encrypt=
+if echo "${MOUNT_OPTIONS}" | grep -q 'test_dummy_encryption' ; then
+    encrypt="-O encrypt"
+fi
+$MKFS_EXT4_PROG -F -b 1024 -E "resize=262144" $encrypt $SCRATCH_DEV 32768 >> $seqres.full 2>&1
 if [ $? -ne 0 ]; then
     _notrun "Can't make file system with a block size of 1024"
 fi
diff --git a/tests/ext4/306 b/tests/ext4/306
index 2ff88537..db256284 100755
--- a/tests/ext4/306
+++ b/tests/ext4/306
@@ -31,7 +31,10 @@ _require_command "$RESIZE2FS_PROG" resize2fs
 # Make a small ext4 fs with extents disabled & mount it
 features="^extents"
 if grep -q 64bit /etc/mke2fs.conf ; then
-    features="^extents,^64bit"
+    features+=",^64bit"
+fi
+if echo "${MOUNT_OPTIONS}" | grep -q 'test_dummy_encryption' ; then
+    features+=",encrypt"
 fi
 
 blksz=$(get_page_size)
diff --git a/tests/generic/260 b/tests/generic/260
index b4d72e0f..2f653b4a 100755
--- a/tests/generic/260
+++ b/tests/generic/260
@@ -121,6 +121,9 @@ case $FSTYP in
 		start=$(_math "$base*$agsize*$bsize")
 		len=$start
 		export MKFS_OPTIONS="-F -b $bsize -g $agsize"
+		if echo "${MOUNT_OPTIONS}" | grep -q 'test_dummy_encryption' ; then
+		    MKFS_OPTIONS+=" -O encrypt"
+		fi
 		;;
 	xfs)
 		agsize=65538
-- 
2.31.0


      parent reply	other threads:[~2022-06-30 14:46 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-30 14:46 [PATCH -v4 0/7] Miscellaneous ext4 test fix ups Theodore Ts'o
2022-06-30 14:46 ` [PATCH -v4 1/7] ext4/050: support indirect as well as extent mapped journals Theodore Ts'o
2022-06-30 14:46 ` [PATCH -v4 2/7] ext4/044: skip test if the file system does not have a journal Theodore Ts'o
2022-06-30 14:46 ` [PATCH -v4 3/7] ext4/045: _require_dumpe2fs doesn't take any arguments so remove them Theodore Ts'o
2022-06-30 14:46 ` [PATCH -v4 4/7] ext4/054: skip test if the dax mount option is enabled Theodore Ts'o
2022-06-30 14:46 ` [PATCH -v4 5/7] ext4/055: skip test if dax mount option is used Theodore Ts'o
2022-06-30 14:46 ` [PATCH -v4 6/7] ext4/035: skip this test if the scratch device does not support 1k block sizes Theodore Ts'o
2022-06-30 14:46 ` Theodore Ts'o [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220630144637.478568-8-tytso@mit.edu \
    --to=tytso@mit.edu \
    --cc=fstests@vger.kernel.org \
    --cc=zlang@redhat.com \
    --subject='Re: [PATCH -v4 7/7] ext4: create file systems with the encrypt feature as necessary' \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.