From: Petr Vorel <pvorel@suse.cz>
To: Avinesh Kumar <avinesh.kumar@suse.com>
Cc: ltp@lists.linux.it
Subject: Re: [LTP] [PATCH v2 2/5] lib: Add support for max_kver to struct tst_test and tst_fs
Date: Wed, 29 Jul 2026 15:36:40 +0200 [thread overview]
Message-ID: <20260729133640.GA36478@pevik> (raw)
In-Reply-To: <56ad6458-25b4-4eee-ab1e-8d3c6d489aa8@suse.com>
Hi Avinesh,
> Hi Petr,
> few comments below
Thanks!
> On 7/29/26 11:57 AM, Petr Vorel wrote:
> > Signed-off-by: Petr Vorel <pvorel@suse.cz>
> > ---
> > The same as v1.
> > include/tst_test.h | 9 ++++++++-
> > lib/tst_test.c | 39 +++++++++++++++++++++++++++++++++++++++
> > 2 files changed, 47 insertions(+), 1 deletion(-)
> > diff --git a/include/tst_test.h b/include/tst_test.h
> > index c69362485e..0910660827 100644
> > --- a/include/tst_test.h
> > +++ b/include/tst_test.h
> > @@ -280,6 +280,9 @@ struct tst_ulimit_val {
> > *
> > * @min_kver: A minimum kernel version supporting the filesystem which has been
> > * created with mkfs.
> > + *
> > + * @max_kver: A maximum kernel version supporting the filesystem which has been
> > + * created with mkfs.
> > */
> > struct tst_fs {
> > const char *type;
> > @@ -292,6 +295,7 @@ struct tst_fs {
> > const void *mnt_data;
> > const char *min_kver;
> > + const char *max_kver;
> > };
> > /**
> > @@ -301,7 +305,9 @@ struct tst_fs {
> > * and each time passed an increasing counter value.
> > * @options: An NULL optstr terminated array of struct tst_option.
> > *
> > - * @min_kver: A minimal kernel version the test can run on. e.g. "3.10".
> > + * @min_kver: A minimal kernel version the test can run on. e.g. "4.4".
> s/minimal/minimum
You spotted more grammar errors so I trust you :). But can you please double
check that it'đ really correct? Minimal is an adjective, minimum is an adjective
but also a noun and an adverb.
When googling I even found use of both in the same document :)
https://kubernetes.io/docs/reference/node/kernel-version-requirements/
"have minimum kernel version requirements"
"minimal kernel version requirement"
> > + *
> > + * @max_kver: A maximal kernel version the test can run on. e.g. "7.2".
> s/maximal/maximum
dtto
> Also, I assume test will *not be skipped* on kernel versions
> 7.1.1, 7.1.2 etc just with
> .max_kver="7.1"
Good point, thanks => v3 (sigh).
check_max_kver() needs to have this condition to take an account the sublevel.
-if (tst_kvercmp(v1, v2, v3) > 0) {
+if (tst_kvercmp(v1, v2, v3) >= 1024) {
msg = "The test requires kernel %s or older";
...
Sublevel can be above 255 since 4.4.256
https://lwn.net/ml/linux-kernel/20210208145805.898658055@linuxfoundation.org/
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=9b82f13e7ef3
But it should be below 1024 (practically the highest sublevel has been 337).
Kind regards,
Petr
> maybe we should clarify.
> > *
> > * @supported_archs: A NULL terminated array of architectures the test runs on
> > * e.g. {"x86_64, "x86", NULL}. Calls tst_is_on_arch() to
> > @@ -551,6 +557,7 @@ struct tst_fs {
> > struct tst_option *options;
> > const char *min_kver;
> > + const char *max_kver;
> > const char *const *supported_archs;
> > diff --git a/lib/tst_test.c b/lib/tst_test.c
> > index 778a1fed40..fa38b3a7a3 100644
> > --- a/lib/tst_test.c
> > +++ b/lib/tst_test.c
> > @@ -1087,6 +1087,36 @@ static bool check_min_kver(const char *min_kver, const int brk_nosupp)
> > return true;
> > }
> > +/*
> > + * Check for the maximal required kernel version.
> > + *
> > + * return: true if the kernel version is low enough, false otherwise.
> This sounds a bit confusing. How about-
> Check the running kernel against the last version the test applies to.
Makes sense. Based on check_min_kver(), which was renamed from check_kver() in
the previous commit. Could you have look on these as well. Anyway, if you have
time, having a look on docs wording as a separate effort would help.
> return: true if the kernel is old enough, false otherwise.
+1
> > + */
> > +static bool check_max_kver(const char *max_kver, const int brk_nosupp)
> > +{
> > + char *msg;
> > + int v1, v2, v3;
> > +
> > + if (tst_parse_kver(max_kver, &v1, &v2, &v3)) {
> > + tst_res(TWARN,
> > + "Invalid kernel version %s, expected %%d.%%d.%%d",
> I wouldn't say 'kernel version is invalid'. maybe test isn't
> supported/applicable on..
tst_parse_kver() returns 1 on error => this is really an error check.
Other thing is that the same error handling is on both places, but that's very
minor.
Kind regards,
Petr
...
> Thanks,
> Avinesh
--
Mailing list info: https://lists.linux.it/listinfo/ltp
next prev parent reply other threads:[~2026-07-29 13:37 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-29 9:57 [LTP] [PATCH v2 0/5] Add support for .max_kver Petr Vorel
2026-07-29 9:57 ` [LTP] [PATCH v2 1/5] lib: Rename function check_kver() => check_min_kver() Petr Vorel
2026-07-29 9:57 ` [LTP] [PATCH v2 2/5] lib: Add support for max_kver to struct tst_test and tst_fs Petr Vorel
2026-07-29 10:40 ` Avinesh Kumar via ltp
2026-07-29 13:36 ` Petr Vorel [this message]
2026-07-29 20:19 ` Avinesh Kumar via ltp
2026-07-29 9:57 ` [LTP] [PATCH v2 3/5] execve04: Use .max_kver Petr Vorel
2026-07-29 9:57 ` [LTP] [PATCH v2 4/5] creat07: " Petr Vorel
2026-07-29 9:57 ` [LTP] [PATCH v2 5/5] fanotify20: Skip on v7.2 Petr Vorel
2026-07-29 10:26 ` Jan Kara
2026-07-29 15:47 ` [LTP] [PATCH v2 0/5] Add support for .max_kver Andrea Cervesato via ltp
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=20260729133640.GA36478@pevik \
--to=pvorel@suse.cz \
--cc=avinesh.kumar@suse.com \
--cc=ltp@lists.linux.it \
/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