All of lore.kernel.org
 help / color / mirror / Atom feed
From: Petr Vorel <pvorel@suse.cz>
To: Cyril Hrubis <chrubis@suse.cz>
Cc: Richard Palethorpe <rpalethorpe@suse.com>, ltp@lists.linux.it
Subject: Re: [LTP] [PATCH v4 4/9] tst_supported_fs: Support skip list when query single fs
Date: Fri, 9 Sep 2022 12:55:50 +0200	[thread overview]
Message-ID: <Yxsbtrcv+FEMvBfH@pevik> (raw)
In-Reply-To: <YxsKz9j1mVHIhcfw@yuki>

Hi all,

> > +++ b/lib/tst_supported_fs_types.c
> > @@ -134,6 +134,24 @@ enum tst_fs_impl tst_fs_is_supported(const char *fs_type)
> >  	return TST_FS_UNSUPPORTED;
> >  }

> > +enum tst_fs_impl tst_fs_is_supported_skiplist(const char *fs_type, const char
> > +					      *const *skiplist)
> > +{
> > +	int ret;
> > +
> > +	ret = tst_fs_is_supported(fs_type);
> > +
> > +	if (!ret)
> > +		return ret;
> > +
> > +	if (tst_fs_in_skiplist(fs_type, skiplist)) {
> > +		tst_brk(TCONF, "%s is not supported by the test",
> > +			fs_type);

> I would expect to return TST_FS_UNSUPPORTED here. It's a bit hacky
> solution to exit a library call with tst_brk(TCONF, "");
Understand. There are 2 cases of not supported filesystems: 1) filesystem not
supported 2) filesystem skipped. Therefore I'd like to introduce
TST_FS_SKIPPED_BY_TEST (that would be 1 (therefore exit code
will have to be tested against the constants. That's IMHO better than
reinventing a wheel to detect this in testcases/lib/tst_supported_fs.c.

e.g.:

+++ b/include/tst_fs.h
@@ -171,7 +171,8 @@ int tst_fill_file(const char *path, char pattern, size_t bs, size_t bcount);
 int tst_prealloc_file(const char *path, size_t bs, size_t bcount);
 
 enum tst_fs_impl {
-       TST_FS_UNSUPPORTED = 0,
+       TST_FS_UNSUPPORTED = -2,
+       TST_FS_SKIPPED_BY_TEST = -1,
        TST_FS_KERNEL = 1,
        TST_FS_FUSE = 2,
 };

I also wonder if testcases/lib/tst_supported_fs.c should print TCONF in case of
error or just exit 0 or 1 (that's done now).

check for all filesystems (tst_supported_fs without params) is run in:
* zram01.sh - it handles no suitable filesystem, but the check could be based
  on tst_supported_fs return code
* generate_lvm_runfile.sh - does handle no suitable filesystem, but with
  'set -e' and trap - adding TCONF info would make things more clear
* prepare_lvm.sh (in prepare_lvm()) - does *not* handle no suitable filesystem.
  Although it's unlikely there is no supported filesystem it'd be better to
  print the message (it'd be more clear when testing with $LTP_SINGLE_FS_TYPE)

check for particular filesystem (tst_supported_fs foo) is run in:
* prepare_lvm.sh (in create_volume) - it check for unsupported filesystem and
  just quietly skip creating LVM. IMHO have here TCONF message would not harm.

=> Unless anybody objects I'll add TCONF messages in v5.

Kind regards,
Petr

-- 
Mailing list info: https://lists.linux.it/listinfo/ltp

  reply	other threads:[~2022-09-09 10:56 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-02 13:37 [LTP] [PATCH v4 0/9] shell: df01.sh: $TST_ALL_FILESYSTEMS (.all_filesystems) Petr Vorel
2022-09-02 13:37 ` [LTP] [PATCH v4 1/9] shell: Print mount command in tst_mount() Petr Vorel
2022-09-02 13:37 ` [LTP] [PATCH v4 2/9] shell API/tests: Require root for TST_{FORMAT, MOUNT}_DEVICE Petr Vorel
2022-09-02 13:37 ` [LTP] [PATCH v4 3/9] tst_supported_fs: Implement skip list Petr Vorel
2022-09-09  9:40   ` Cyril Hrubis
2022-09-09  9:41     ` Petr Vorel
2022-09-09  9:47       ` Petr Vorel
2022-09-09 10:02     ` Petr Vorel
2022-09-02 13:37 ` [LTP] [PATCH v4 4/9] tst_supported_fs: Support skip list when query single fs Petr Vorel
2022-09-09  9:43   ` Cyril Hrubis
2022-09-09 10:55     ` Petr Vorel [this message]
2022-09-09 11:16       ` Cyril Hrubis
2022-09-09 11:33         ` Petr Vorel
2022-09-09 14:15           ` Martin Doucha
2022-09-09 14:22             ` Petr Vorel
2022-09-09 14:39               ` Martin Doucha
2022-09-09 14:47                 ` Petr Vorel
2022-09-09 14:49                   ` Martin Doucha
2022-09-12  5:40                     ` Petr Vorel
2022-09-02 13:37 ` [LTP] [PATCH v4 5/9] shell: Add $TST_SKIP_FILESYSTEMS + tests Petr Vorel
2022-09-02 22:14   ` Petr Vorel
2022-09-02 13:37 ` [LTP] [PATCH v4 6/9] tst_test.sh: Introduce TST_FS_TYPE_FUSE Petr Vorel
2022-09-02 13:37 ` [LTP] [PATCH v4 7/9] tst_test.sh: Add $TST_ALL_FILESYSTEMS Petr Vorel
2022-09-02 13:37 ` [LTP] [PATCH v4 8/9] shell: Add test for TST_ALL_FILESYSTEMS=1 Petr Vorel
2022-09-02 13:37 ` [LTP] [PATCH v4 9/9] df01.sh: Convert to TST_ALL_FILESYSTEMS=1 Petr Vorel
2022-09-05  6:47 ` [LTP] [PATCH v4 0/9] shell: df01.sh: $TST_ALL_FILESYSTEMS (.all_filesystems) Li Wang
2022-09-05  7:04   ` Petr Vorel
2022-09-05  7:35     ` Li Wang

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=Yxsbtrcv+FEMvBfH@pevik \
    --to=pvorel@suse.cz \
    --cc=chrubis@suse.cz \
    --cc=ltp@lists.linux.it \
    --cc=rpalethorpe@suse.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.