All of lore.kernel.org
 help / color / mirror / Atom feed
From: Qu Wenruo <quwenruo@cn.fujitsu.com>
To: xfs@oss.sgi.com, linux-btrfs@vger.kernel.org
Subject: Re: [PATCH] xfstests: Enhance the scratch dev pool and deletable device check
Date: Mon, 06 Jan 2014 17:17:33 +0800	[thread overview]
Message-ID: <52CA74AD.5040304@cn.fujitsu.com> (raw)
In-Reply-To: <1388999598-17058-1-git-send-email-quwenruo@cn.fujitsu.com>

Qu Wenruo 写道:
> From: Miao Xie <miaox@cn.fujitsu.com>
Sorry for the double from line.
I'll resend the patch.

Qu
>
> From: Miao Xie <miaox@cn.fujitsu.com>
>
> _require_scratch_dev_pool() checks the devices number in
> SCRATCH_DEV_POOL, but it's not enough since some btrfs RAID10 tests
> needs 4 devices, but when 3 or less devices are provided, the check is
> useless and related test case will fail(btrfs/003 btrfs/011 btrfs/023).
>
> Also _require_deletable_scratch_dev_pool only checks whether it is
> virtul, like virtio(not including virtio-scsi) disk will pass the check
> but is unable to delete.
>
> This patch enhance _require_scratch_dev_pool by add optional $1 as
> needed device number to do extra check.
> And enhance _require_deletable_scratch_dev_pool by directly check
> /sys/class/block/$DEV/device/delete file.
>
> Signed-off-by: Miao Xie <miaox@cn.fujitsu.com>
> Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
> ---
>   common/rc       | 22 ++++++++++++++--------
>   tests/btrfs/003 |  2 +-
>   tests/btrfs/011 |  2 +-
>   3 files changed, 16 insertions(+), 10 deletions(-)
>
> diff --git a/common/rc b/common/rc
> index a2005c9..09644af 100644
> --- a/common/rc
> +++ b/common/rc
> @@ -1927,16 +1927,24 @@ _test_inode_extsz()
>   _require_scratch_dev_pool()
>   {
>   	local i
> +	local ndevs
> +
>   	if [ -z "$SCRATCH_DEV_POOL" ]; then
>   		_notrun "this test requires a valid \$SCRATCH_DEV_POOL"
>   	fi
>   
> -	# btrfs test case needs 2 or more scratch_dev_pool; other FS not sure
> +	if [ -z "$1" ]; then
> +		ndevs=2
> +	else
> +		ndevs=$1
> +	fi
> +
> +	# btrfs test case needs ndevs or more scratch_dev_pool; other FS not sure
>   	# so fail it
>   	case $FSTYP in
>   	btrfs)
> -		if [ "`echo $SCRATCH_DEV_POOL|wc -w`" -lt 2 ]; then
> -			_notrun "btrfs and this test needs 2 or more disks in SCRATCH_DEV_POOL"
> +		if [ "`echo $SCRATCH_DEV_POOL|wc -w`" -lt $ndevs ]; then
> +			_notrun "btrfs and this test needs $ndevs or more disks in SCRATCH_DEV_POOL"
>   		fi
>   	;;
>   	*)
> @@ -1963,17 +1971,15 @@ _require_scratch_dev_pool()
>   	done
>   }
>   
> -# We will check if the device is virtual (eg: loop device) since it does not
> -# have the delete entry-point. Otherwise SCSI and USB devices are fine.
> +# We will check if the device is deletable
>   _require_deletable_scratch_dev_pool()
>   {
>   	local i
>   	local x
>   	for i in $SCRATCH_DEV_POOL; do
>   		x=`echo $i | cut -d"/" -f 3`
> -		ls -l /sys/class/block/${x} | grep -q "virtual"
> -		if [ $? == "0" ]; then
> -			_notrun "$i is a virtual device which is not deletable"
> +		if [ ! -f /sys/class/block/${x}/device/delete ]; then
> +			_notrun "$i is a device which is not deletable"
>   		fi
>   	done
>   }
> diff --git a/tests/btrfs/003 b/tests/btrfs/003
> index 9105d06..29f947b 100755
> --- a/tests/btrfs/003
> +++ b/tests/btrfs/003
> @@ -49,7 +49,7 @@ _need_to_be_root
>   _supported_fs btrfs
>   _supported_os Linux
>   _require_scratch
> -_require_scratch_dev_pool
> +_require_scratch_dev_pool 4
>   _require_deletable_scratch_dev_pool
>   _require_command $WIPEFS_PROG
>   
> diff --git a/tests/btrfs/011 b/tests/btrfs/011
> index 71ff3de..faa0402 100755
> --- a/tests/btrfs/011
> +++ b/tests/btrfs/011
> @@ -62,7 +62,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
>   _need_to_be_root
>   _supported_fs btrfs
>   _require_scratch
> -_require_scratch_dev_pool
> +_require_scratch_dev_pool 4
>   _require_command $BTRFS_SHOW_SUPER_PROG btrfs-show-super
>   
>   rm -f $seqres.full


WARNING: multiple messages have this Message-ID (diff)
From: Qu Wenruo <quwenruo@cn.fujitsu.com>
To: xfs@oss.sgi.com, linux-btrfs@vger.kernel.org
Subject: Re: [PATCH] xfstests: Enhance the scratch dev pool and deletable device check
Date: Mon, 06 Jan 2014 17:17:33 +0800	[thread overview]
Message-ID: <52CA74AD.5040304@cn.fujitsu.com> (raw)
In-Reply-To: <1388999598-17058-1-git-send-email-quwenruo@cn.fujitsu.com>

Qu Wenruo 写道:
> From: Miao Xie <miaox@cn.fujitsu.com>
Sorry for the double from line.
I'll resend the patch.

Qu
>
> From: Miao Xie <miaox@cn.fujitsu.com>
>
> _require_scratch_dev_pool() checks the devices number in
> SCRATCH_DEV_POOL, but it's not enough since some btrfs RAID10 tests
> needs 4 devices, but when 3 or less devices are provided, the check is
> useless and related test case will fail(btrfs/003 btrfs/011 btrfs/023).
>
> Also _require_deletable_scratch_dev_pool only checks whether it is
> virtul, like virtio(not including virtio-scsi) disk will pass the check
> but is unable to delete.
>
> This patch enhance _require_scratch_dev_pool by add optional $1 as
> needed device number to do extra check.
> And enhance _require_deletable_scratch_dev_pool by directly check
> /sys/class/block/$DEV/device/delete file.
>
> Signed-off-by: Miao Xie <miaox@cn.fujitsu.com>
> Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
> ---
>   common/rc       | 22 ++++++++++++++--------
>   tests/btrfs/003 |  2 +-
>   tests/btrfs/011 |  2 +-
>   3 files changed, 16 insertions(+), 10 deletions(-)
>
> diff --git a/common/rc b/common/rc
> index a2005c9..09644af 100644
> --- a/common/rc
> +++ b/common/rc
> @@ -1927,16 +1927,24 @@ _test_inode_extsz()
>   _require_scratch_dev_pool()
>   {
>   	local i
> +	local ndevs
> +
>   	if [ -z "$SCRATCH_DEV_POOL" ]; then
>   		_notrun "this test requires a valid \$SCRATCH_DEV_POOL"
>   	fi
>   
> -	# btrfs test case needs 2 or more scratch_dev_pool; other FS not sure
> +	if [ -z "$1" ]; then
> +		ndevs=2
> +	else
> +		ndevs=$1
> +	fi
> +
> +	# btrfs test case needs ndevs or more scratch_dev_pool; other FS not sure
>   	# so fail it
>   	case $FSTYP in
>   	btrfs)
> -		if [ "`echo $SCRATCH_DEV_POOL|wc -w`" -lt 2 ]; then
> -			_notrun "btrfs and this test needs 2 or more disks in SCRATCH_DEV_POOL"
> +		if [ "`echo $SCRATCH_DEV_POOL|wc -w`" -lt $ndevs ]; then
> +			_notrun "btrfs and this test needs $ndevs or more disks in SCRATCH_DEV_POOL"
>   		fi
>   	;;
>   	*)
> @@ -1963,17 +1971,15 @@ _require_scratch_dev_pool()
>   	done
>   }
>   
> -# We will check if the device is virtual (eg: loop device) since it does not
> -# have the delete entry-point. Otherwise SCSI and USB devices are fine.
> +# We will check if the device is deletable
>   _require_deletable_scratch_dev_pool()
>   {
>   	local i
>   	local x
>   	for i in $SCRATCH_DEV_POOL; do
>   		x=`echo $i | cut -d"/" -f 3`
> -		ls -l /sys/class/block/${x} | grep -q "virtual"
> -		if [ $? == "0" ]; then
> -			_notrun "$i is a virtual device which is not deletable"
> +		if [ ! -f /sys/class/block/${x}/device/delete ]; then
> +			_notrun "$i is a device which is not deletable"
>   		fi
>   	done
>   }
> diff --git a/tests/btrfs/003 b/tests/btrfs/003
> index 9105d06..29f947b 100755
> --- a/tests/btrfs/003
> +++ b/tests/btrfs/003
> @@ -49,7 +49,7 @@ _need_to_be_root
>   _supported_fs btrfs
>   _supported_os Linux
>   _require_scratch
> -_require_scratch_dev_pool
> +_require_scratch_dev_pool 4
>   _require_deletable_scratch_dev_pool
>   _require_command $WIPEFS_PROG
>   
> diff --git a/tests/btrfs/011 b/tests/btrfs/011
> index 71ff3de..faa0402 100755
> --- a/tests/btrfs/011
> +++ b/tests/btrfs/011
> @@ -62,7 +62,7 @@ trap "_cleanup; exit \$status" 0 1 2 3 15
>   _need_to_be_root
>   _supported_fs btrfs
>   _require_scratch
> -_require_scratch_dev_pool
> +_require_scratch_dev_pool 4
>   _require_command $BTRFS_SHOW_SUPER_PROG btrfs-show-super
>   
>   rm -f $seqres.full


_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

  reply	other threads:[~2014-01-06  9:16 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-06  9:13 [PATCH] xfstests: Enhance the scratch dev pool and deletable device check Qu Wenruo
2014-01-06  9:13 ` Qu Wenruo
2014-01-06  9:17 ` Qu Wenruo [this message]
2014-01-06  9:17   ` Qu Wenruo

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=52CA74AD.5040304@cn.fujitsu.com \
    --to=quwenruo@cn.fujitsu.com \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=xfs@oss.sgi.com \
    /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.