From: Dave Chinner <david@fromorbit.com> To: Steve French <smfrench@gmail.com> Cc: Eryu Guan <eguan@redhat.com>, fstests@vger.kernel.org, "linux-nfs@vger.kernel.org" <linux-nfs@vger.kernel.org>, "linux-cifs@vger.kernel.org" <linux-cifs@vger.kernel.org>, Weston Andros Adamson <dros@primarydata.com> Subject: Re: [PATCH v2 1/5] common: re-enable tests that require scratch dev on NFS Date: Mon, 17 Nov 2014 16:34:10 +1100 [thread overview] Message-ID: <20141117053410.GJ23575@dastard> (raw) In-Reply-To: <CAH2r5msD-FDDvUL5Gt+7Fzt-tvduS93sxM-PG9dZjvk0ED53QA@mail.gmail.com> On Fri, Nov 14, 2014 at 11:02:50AM -0600, Steve French wrote: > On Wed, Nov 12, 2014 at 9:33 PM, Dave Chinner <david@fromorbit.com> wrote: > > On Wed, Nov 12, 2014 at 12:36:13PM -0600, Steve French wrote: > >> On Fri, Oct 31, 2014 at 12:03 PM, Eryu Guan <eguan@redhat.com> wrote: > >> > This commit disables tests requires scratch dev running on NFS > >> > > >> > c041421 xfstests: stop special casing nfs and udf > >> > > >> > Now re-enable them to get a larger test coverage on NFS. > >> > > >> > Signed-off-by: Eryu Guan <eguan@redhat.com> > >> > --- > >> > common/rc | 22 +++++++++++++++++++--- > >> > 1 file changed, 19 insertions(+), 3 deletions(-) > >> > > >> > diff --git a/common/rc b/common/rc > >> > index 747cf72..ae03712 100644 > >> > --- a/common/rc > >> > +++ b/common/rc > >> > @@ -551,6 +551,14 @@ _mkfs_dev() > >> > rm -f $tmp_dir.mkfserr $tmp_dir.mkfsstd > >> > } > >> > > >> > +# remove all files in $SCRATCH_MNT, useful when testing on NFS/CIFS > >> > +_scratch_cleanup_files() > >> > +{ > >> > + _scratch_mount > >> > + rm -rf $SCRATCH_MNT/* > >> > + _scratch_unmount > >> > +} > >> > >> There should be a check to make sure SCRATCH_MNT exists before you > >> wipe the whole disk .... > >> > >> so if no SCRATCH_MNT then this does rm -rf/* > >> right ... (and wipes out your whole system ...) > > > > You can't get to that function until after all the checks that > > SCRATCH_MNT exists. i.e. this happens during _scratch_mkfs, and that > > is only called in tests after all the startup checks validate > > devices and mounts exist. i.e. see common/config::get_next_config() > > Well, I reproduced it easily enough again today (after taking a > snapshot of the VM) > by simply running generic/120 against NFS with SCRATCH_MNT not > specified in local.config > Dros also ran into this problem. tests/generic/120 does this: .... _require_scratch _scratch_mkfs .... So we call: _require_scratch _require_scratch_nocheck case "$FSTYP" in nfs*) echo $SCRATCH_DEV | grep -q ":/" > /dev/null 2>&1 if [ -z "$SCRATCH_DEV" -o "$?" != "0" ]; then _notrun "this test requires a valid \$SCRATCH_DEV" fi if [ ! -d "$SCRATCH_MNT" ]; then _notrun "this test requires a valid \$SCRATCH_MNT" fi If $SCRATCH_MNT is empty, then it should fail right there. An empty string gives: $ if [ ! -d "" ]; then > echo foo > fi foo $ before it gets anywhere near _scratch_mkfs. So, why isn't generic/120 aborting during the _require_scratch check? Cheers, Dave. -- Dave Chinner david@fromorbit.com
WARNING: multiple messages have this Message-ID (diff)
From: Dave Chinner <david-FqsqvQoI3Ljby3iVrkZq2A@public.gmane.org> To: Steve French <smfrench-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> Cc: Eryu Guan <eguan-H+wXaHxf7aLQT0dZR+AlfA@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: Mon, 17 Nov 2014 16:34:10 +1100 [thread overview] Message-ID: <20141117053410.GJ23575@dastard> (raw) In-Reply-To: <CAH2r5msD-FDDvUL5Gt+7Fzt-tvduS93sxM-PG9dZjvk0ED53QA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> On Fri, Nov 14, 2014 at 11:02:50AM -0600, Steve French wrote: > On Wed, Nov 12, 2014 at 9:33 PM, Dave Chinner <david-FqsqvQoI3Ljby3iVrkZq2A@public.gmane.org> wrote: > > On Wed, Nov 12, 2014 at 12:36:13PM -0600, Steve French wrote: > >> On Fri, Oct 31, 2014 at 12:03 PM, Eryu Guan <eguan-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> wrote: > >> > This commit disables tests requires scratch dev running on NFS > >> > > >> > c041421 xfstests: stop special casing nfs and udf > >> > > >> > Now re-enable them to get a larger test coverage on NFS. > >> > > >> > Signed-off-by: Eryu Guan <eguan-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> > >> > --- > >> > common/rc | 22 +++++++++++++++++++--- > >> > 1 file changed, 19 insertions(+), 3 deletions(-) > >> > > >> > diff --git a/common/rc b/common/rc > >> > index 747cf72..ae03712 100644 > >> > --- a/common/rc > >> > +++ b/common/rc > >> > @@ -551,6 +551,14 @@ _mkfs_dev() > >> > rm -f $tmp_dir.mkfserr $tmp_dir.mkfsstd > >> > } > >> > > >> > +# remove all files in $SCRATCH_MNT, useful when testing on NFS/CIFS > >> > +_scratch_cleanup_files() > >> > +{ > >> > + _scratch_mount > >> > + rm -rf $SCRATCH_MNT/* > >> > + _scratch_unmount > >> > +} > >> > >> There should be a check to make sure SCRATCH_MNT exists before you > >> wipe the whole disk .... > >> > >> so if no SCRATCH_MNT then this does rm -rf/* > >> right ... (and wipes out your whole system ...) > > > > You can't get to that function until after all the checks that > > SCRATCH_MNT exists. i.e. this happens during _scratch_mkfs, and that > > is only called in tests after all the startup checks validate > > devices and mounts exist. i.e. see common/config::get_next_config() > > Well, I reproduced it easily enough again today (after taking a > snapshot of the VM) > by simply running generic/120 against NFS with SCRATCH_MNT not > specified in local.config > Dros also ran into this problem. tests/generic/120 does this: .... _require_scratch _scratch_mkfs .... So we call: _require_scratch _require_scratch_nocheck case "$FSTYP" in nfs*) echo $SCRATCH_DEV | grep -q ":/" > /dev/null 2>&1 if [ -z "$SCRATCH_DEV" -o "$?" != "0" ]; then _notrun "this test requires a valid \$SCRATCH_DEV" fi if [ ! -d "$SCRATCH_MNT" ]; then _notrun "this test requires a valid \$SCRATCH_MNT" fi If $SCRATCH_MNT is empty, then it should fail right there. An empty string gives: $ if [ ! -d "" ]; then > echo foo > fi foo $ before it gets anywhere near _scratch_mkfs. So, why isn't generic/120 aborting during the _require_scratch check? Cheers, Dave. -- Dave Chinner david-FqsqvQoI3Ljby3iVrkZq2A@public.gmane.org
next prev parent reply other threads:[~2014-11-17 5:34 UTC|newest] Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top 2014-10-31 17:03 [PATCH v2 0/5] re-enable tests that require scratch dev on NFS Eryu Guan 2014-10-31 17:03 ` [PATCH v2 1/5] common: " Eryu Guan 2014-11-10 2:12 ` Dave Chinner 2014-11-10 4:05 ` Eryu Guan 2014-11-12 18:36 ` Steve French 2014-11-12 18:36 ` Steve French 2014-11-13 3:33 ` Dave Chinner 2014-11-13 3:33 ` Dave Chinner 2014-11-14 17:02 ` Steve French 2014-11-14 17:02 ` Steve French 2014-11-15 5:35 ` Eryu Guan 2014-11-15 5:35 ` Eryu Guan 2014-11-17 5:41 ` Dave Chinner 2014-11-17 5:41 ` Dave Chinner 2014-11-17 6:06 ` Eryu Guan 2014-11-17 6:06 ` Eryu Guan 2014-11-17 6:54 ` Dave Chinner 2014-11-17 6:54 ` Dave Chinner 2014-11-17 14:53 ` Omer Zilberberg 2014-11-17 14:53 ` Omer Zilberberg 2014-11-17 20:22 ` Dave Chinner 2014-11-17 20:22 ` Dave Chinner 2014-11-18 16:16 ` Omer Zilberberg 2014-11-18 16:16 ` Omer Zilberberg 2014-11-17 5:34 ` Dave Chinner [this message] 2014-11-17 5:34 ` Dave Chinner 2014-10-31 17:03 ` [PATCH v2 2/5] common: add _require_block_device() helper Eryu Guan 2014-10-31 17:03 ` [PATCH v2 3/5] common: skip atime related tests on NFS Eryu Guan 2014-10-31 17:03 ` [PATCH v2 4/5] common: use _scratch_mount helper in _require_relatime() Eryu Guan 2014-10-31 17:04 ` [PATCH v2 5/5] generic/277: add _require_attrs Eryu Guan [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
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=20141117053410.GJ23575@dastard \ --to=david@fromorbit.com \ --cc=dros@primarydata.com \ --cc=eguan@redhat.com \ --cc=fstests@vger.kernel.org \ --cc=linux-cifs@vger.kernel.org \ --cc=linux-nfs@vger.kernel.org \ --cc=smfrench@gmail.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: linkBe 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.