All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Luís Henriques" <lhenriques@suse.de>
To: Jeff Layton <jlayton@kernel.org>
Cc: fstests@vger.kernel.org, guan@eryu.me,
	Eric Biggers <ebiggers@kernel.org>
Subject: Re: [PATCH v2] common/rc, ceph: skip ceph/001-ceph/003 if test_dummy_encryption is enabled
Date: Fri, 7 Jan 2022 10:28:40 +0000	[thread overview]
Message-ID: <YdgV2LSDO6ezQegm@suse.de> (raw)
In-Reply-To: <20220106133049.68171-1-jlayton@kernel.org>

On Thu, Jan 06, 2022 at 08:30:49AM -0500, Jeff Layton wrote:
> Some tests on ceph require changing the layout of new files, which is
> forbidden when the files are encrypted. Skip these tests if the
> test_dummy_encryption mount option is being used.
> 
> Generalize the _exclude_scratch_mount_option code and add a new
> _exclude_test_mount_option call as well. Call the new function from the
> ceph tests that should exclude test_dummy_encryption.
> 
> Cc: Luis Henriques <lhenriques@suse.de>
> Cc: Eric Biggers <ebiggers@kernel.org>
> Signed-off-by: Jeff Layton <jlayton@kernel.org>

Looks good to me!  Feel free to add my

Reviewed-by: Luis Henriques <lhenriques@suse.de>

Cheers,
--
Luís

> ---
>  common/btrfs   |  2 +-
>  common/rc      | 28 +++++++++++++++++++---------
>  tests/ceph/001 |  1 +
>  tests/ceph/002 |  1 +
>  tests/ceph/003 |  1 +
>  5 files changed, 23 insertions(+), 10 deletions(-)
> 
> Thanks to Eric and Luis for review so far!
> 
> v2: fix argument handling in _exclude_mount_option
>     fix _require_btrfs_no_compress
>     ensure _normalize_mount_options callers pass correct argument
>     
> diff --git a/common/btrfs b/common/btrfs
> index fe5985663ab4..4afe81eb2dfb 100644
> --- a/common/btrfs
> +++ b/common/btrfs
> @@ -115,7 +115,7 @@ _require_btrfs_fs_sysfs()
>  
>  _require_btrfs_no_compress()
>  {
> -	if _normalize_mount_options | grep -q "compress"; then
> +	if _normalize_mount_options "$MOUNT_OPTIONS" | grep -q "compress"; then
>  		_notrun "This test requires no compression enabled"
>  	fi
>  }
> diff --git a/common/rc b/common/rc
> index 341abc9a0d02..0c985d0f2952 100644
> --- a/common/rc
> +++ b/common/rc
> @@ -2039,7 +2039,7 @@ _require_sane_bdev_flush()
>  # Returns 0 if DAX will be used, 1 if DAX is not going to be used.
>  __scratch_uses_fsdax()
>  {
> -	local ops=$(_normalize_mount_options)
> +	local ops=$(_normalize_mount_options "$MOUNT_OPTIONS")
>  
>  	echo $ops | egrep -qw "dax(=always| |$)" && return 0
>  	echo $ops | grep -qw "dax=never" && return 1
> @@ -3718,7 +3718,7 @@ _has_metadata_journaling()
>  			return 1
>  		}
>  		# ext4 might not load a journal
> -		if _normalize_mount_options | grep -qw "noload"; then
> +		if _normalize_mount_options "$MOUNT_OPTIONS" | grep -qw "noload"; then
>  			echo "mount option \"noload\" not allowed in this test"
>  			return 1
>  		fi
> @@ -3882,20 +3882,20 @@ _require_cloner()
>  		_notrun "cloner binary not present at $CLONER_PROG"
>  }
>  
> -# Normalize mount options from global $MOUNT_OPTIONS
> -# Convert options like "-o opt1,opt2 -oopt3" to
> -# "opt1 opt2 opt3"
> +# Normalize mount options from the option string in $1
> +# Convert options like "-o opt1,opt2 -oopt3" to "opt1 opt2 opt3"
>  _normalize_mount_options()
>  {
> -	echo $MOUNT_OPTIONS | sed -n 's/-o\s*\(\S*\)/\1/gp'| sed 's/,/ /g'
> +	echo "$1" | sed -n 's/-o\s*\(\S*\)/\1/gp'| sed 's/,/ /g'
>  }
>  
> -# skip test if MOUNT_OPTIONS contains the given strings
> +# skip test if $1 contains the given strings in trailing arguments
>  # Both dax and dax=always are excluded if dax or dax=always is passed
> -_exclude_scratch_mount_option()
> +_exclude_mount_option()
>  {
> -	local mnt_opts=$(_normalize_mount_options)
> +	local mnt_opts=$(_normalize_mount_options "$1")
>  
> +	shift
>  	while [ $# -gt 0 ]; do
>  		local pattern=$1
>  		echo "$pattern" | egrep -q "dax(=always|$)" && \
> @@ -3907,6 +3907,16 @@ _exclude_scratch_mount_option()
>  	done
>  }
>  
> +_exclude_scratch_mount_option()
> +{
> +	_exclude_mount_option "$MOUNT_OPTIONS" $@
> +}
> +
> +_exclude_test_mount_option()
> +{
> +	_exclude_mount_option "$TEST_FS_MOUNT_OPTS" $@
> +}
> +
>  _require_atime()
>  {
>  	_exclude_scratch_mount_option "noatime"
> diff --git a/tests/ceph/001 b/tests/ceph/001
> index c00de308fd95..5a828567d500 100755
> --- a/tests/ceph/001
> +++ b/tests/ceph/001
> @@ -22,6 +22,7 @@ _begin_fstest auto quick copy_range
>  _supported_fs ceph
>  
>  _require_xfs_io_command "copy_range"
> +_exclude_test_mount_option "test_dummy_encryption"
>  _require_attrs
>  _require_test
>  
> diff --git a/tests/ceph/002 b/tests/ceph/002
> index 9bc728fd2e18..ac3d65b529bd 100755
> --- a/tests/ceph/002
> +++ b/tests/ceph/002
> @@ -30,6 +30,7 @@ _begin_fstest auto quick copy_range
>  _supported_fs ceph
>  
>  _require_xfs_io_command "copy_range"
> +_exclude_test_mount_option "test_dummy_encryption"
>  _require_attrs
>  _require_test
>  
> diff --git a/tests/ceph/003 b/tests/ceph/003
> index faedb48cfeea..2d6cb393b3f6 100755
> --- a/tests/ceph/003
> +++ b/tests/ceph/003
> @@ -18,6 +18,7 @@ _begin_fstest auto quick copy_range
>  _supported_fs ceph
>  
>  _require_xfs_io_command "copy_range"
> +_exclude_test_mount_option "test_dummy_encryption"
>  _require_attrs
>  _require_test
>  
> -- 
> 2.33.1
> 

      parent reply	other threads:[~2022-01-07 10:28 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-06 13:30 [PATCH v2] common/rc, ceph: skip ceph/001-ceph/003 if test_dummy_encryption is enabled Jeff Layton
2022-01-06 16:50 ` Eric Biggers
2022-01-07 10:28 ` Luís Henriques [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=YdgV2LSDO6ezQegm@suse.de \
    --to=lhenriques@suse.de \
    --cc=ebiggers@kernel.org \
    --cc=fstests@vger.kernel.org \
    --cc=guan@eryu.me \
    --cc=jlayton@kernel.org \
    /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
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.