Linux CIFS filesystem development
 help / color / mirror / Atom feed
From: Dave Chinner <david-FqsqvQoI3Ljby3iVrkZq2A@public.gmane.org>
To: Omer Zilberberg <omzg-/8YdC2HfS5554TAoqtyWWQ@public.gmane.org>
Cc: Eryu Guan <eguan-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>,
	Steve French <smfrench-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
	fstests-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	"linux-nfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<linux-nfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	"linux-cifs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org"
	<linux-cifs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	Weston Andros Adamson
	<dros-7I+n7zu2hftEKMMhf/gKZA@public.gmane.org>
Subject: Re: [PATCH v2 1/5] common: re-enable tests that require scratch dev on NFS
Date: Tue, 18 Nov 2014 07:22:07 +1100	[thread overview]
Message-ID: <20141117202207.GN23575@dastard> (raw)
In-Reply-To: <546A0BFE.6080608-/8YdC2HfS5554TAoqtyWWQ@public.gmane.org>

On Mon, Nov 17, 2014 at 04:53:50PM +0200, Omer Zilberberg wrote:
> > Another FYI: we can actually test any filesystem without a scratch
> > device configured:
> > 
> > $ sudo TEST_DEV=/dev/vda TEST_DIR=/mnt/test ./check generic/120
> > FSTYP         -- xfs (non-debug)
> > PLATFORM      -- Linux/x86_64 test2 3.18.0-rc2-dgc+
> > 
> > generic/120 16s ... [not run] this test requires a valid $SCRATCH_DEV
> > Not run: generic/120
> > Passed all 0 tests
> > $
> 
> Please note that since commit 83ef157d, that is no longer true, because _require_test calls _is_block_dev with empty parameter, which prints usage:
> $ sudo TEST_DEV=/dev/sda TEST_DIR=/mnt/dev0  ./check generic/001
> FSTYP         -- ext4
> PLATFORM      -- Linux/x86_64 testvm 3.17.0
> 
> generic/001 7s ... - output mismatch (see /opt/xfstests/results//generic/001.out.bad)
>     --- tests/generic/001.out   2014-09-10 11:04:44.249185592 +0300
>     +++ /opt/xfstests/results//generic/001.out.bad      2014-11-17 15:14:12.380061760 +0200
>     @@ -1,4 +1,5 @@
>      QA output created by 001
>     +Usage: _is_block_dev dev
>      cleanup
>      setup ....................................
>      iter 1 chain ... check ....................................
>     ...
>     (Run 'diff -u tests/generic/001.out /opt/xfstests/results//generic/001.out.bad'  to see the entire diff)
> Ran: generic/001
> Failures: generic/001
> Failed 1 of 1 tests
> 
> Here's a patch to fix that:
> ----
> Subject: [PATCH] _required_test: removed unneeded test for scratch_dev
> 
> testing for scratch_dev in _required_test is unnecessary, since it is
> not required for these tests. Furthermore, if a scratch_dev is not given,
> all tests which are supposed to pass on test_dev fail, because
> _is_block_dev is given an empty string as scratch_dev, and prints usage.

I'm beginning to sound like a broken record. Why isn't this *invalid
config check* being done in the config parsing rather than on every
test that requires a scratch or test device?

i.e. removing the check is not the correct fix - checking it during
config parsing means none of these checks need to be done in
_require_test, nor in _require_scratch_nocheck.

i.e. in get_next_config() we already know the FSTYP, so we should
be checking that:

	a) TEST_DEV is valid for fstyp
	b) SCRATCH_DEV (if configured) is valid for fstyp
	c) TEST_DEV != SCRATCH_DEV if they both exist and fstyp
	   indicates they should be block devices

And then we can pretty much assume that they are valid everywhere
else, and _require_scratch_nocheck() simply needs to check for a
non-empty string...

> Signed-off-by: Omer Zilberberg <omzg-/8YdC2HfS5554TAoqtyWWQ@public.gmane.org>
> ---
>  common/rc | 6 +-----
>  1 file changed, 1 insertion(+), 5 deletions(-)
> 
> diff --git a/common/rc b/common/rc
> index d5e3aff..b863808 100644
> --- a/common/rc
> +++ b/common/rc
> @@ -1104,7 +1104,7 @@ _require_scratch()
>  }
>  
>  
> -# this test needs a test partition - check we're ok & unmount it
> +# this test needs a test partition - check we're ok & mount if necessary
>  #
>  _require_test()
>  {
> @@ -1138,10 +1138,6 @@ _require_test()
>                  then
>                      _notrun "this test requires a valid \$TEST_DEV"
>                  fi
> -                if [ "`_is_block_dev $SCRATCH_DEV`" = "`_is_block_dev $TEST_DEV`" ]
> -                then
> -                    _notrun "this test requires a valid \$TEST_DEV"
> -                fi
>                 if [ ! -d "$TEST_DIR" ]
>                 then
>                      _notrun "this test requires a valid \$TEST_DIR"

The patch is whitespace damaged. Please read:

https://www.kernel.org/doc/Documentation/email-clients.txt

and resend.

Cheers,

Dave.
-- 
Dave Chinner
david-FqsqvQoI3Ljby3iVrkZq2A@public.gmane.org

  parent reply	other threads:[~2014-11-17 20:22 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1414775040-4051-1-git-send-email-eguan@redhat.com>
     [not found] ` <1414775040-4051-1-git-send-email-eguan-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2014-11-02 20:52   ` Fwd: [PATCH v2 0/5] re-enable tests that require scratch dev on NFS Steve French
     [not found] ` <1414775040-4051-2-git-send-email-eguan@redhat.com>
     [not found]   ` <1414775040-4051-2-git-send-email-eguan-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
2014-11-12 18:36     ` [PATCH v2 1/5] common: " Steve French
     [not found]       ` <CAH2r5muuJRcC4YgFkwUeUcCeEntgY+4POF8-bwmox64wXykuTw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-11-13  3:33         ` Dave Chinner
2014-11-14 17:02           ` Steve French
     [not found]             ` <CAH2r5msD-FDDvUL5Gt+7Fzt-tvduS93sxM-PG9dZjvk0ED53QA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-11-15  5:35               ` Eryu Guan
     [not found]                 ` <20141115053533.GK2863-Y5OA6DF/u0kMsqdw6vYspB/sF2h8X+2i0E9HWUfgJXw@public.gmane.org>
2014-11-17  5:41                   ` Dave Chinner
2014-11-17  6:06                     ` Eryu Guan
     [not found]                       ` <20141117060603.GO2863-Y5OA6DF/u0kMsqdw6vYspB/sF2h8X+2i0E9HWUfgJXw@public.gmane.org>
2014-11-17  6:54                         ` Dave Chinner
2014-11-17 14:53                           ` Omer Zilberberg
     [not found]                             ` <546A0BFE.6080608-/8YdC2HfS5554TAoqtyWWQ@public.gmane.org>
2014-11-17 20:22                               ` Dave Chinner [this message]
2014-11-18 16:16                                 ` Omer Zilberberg
2014-11-17  5:34               ` Dave Chinner

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=20141117202207.GN23575@dastard \
    --to=david-fqsqvqoi3ljby3ivrkzq2a@public.gmane.org \
    --cc=dros-7I+n7zu2hftEKMMhf/gKZA@public.gmane.org \
    --cc=eguan-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=fstests-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-cifs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-nfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=omzg-/8YdC2HfS5554TAoqtyWWQ@public.gmane.org \
    --cc=smfrench-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox