From: Petr Vorel <pvorel@suse.cz>
To: Cyril Hrubis <chrubis@suse.cz>, LTP List <ltp@lists.linux.it>
Subject: Re: [LTP] LTP Release preparations
Date: Thu, 11 Jan 2024 11:28:08 +0100 [thread overview]
Message-ID: <20240111102808.GA1893382@pevik> (raw)
In-Reply-To: <20240110180620.GA1767461@pevik>
Hi Cyril, all,
> ...
> > * .modprobe_module
> > I'm not sure about .modprobe_module [2]. I have draft of v3, but I'm not sure if
> > it's needed. My motivation was to fix setsockopt08.c failure on openSUSE
> > Tumbleweed, but that turns out to be procps package issue due broken symlink
> > (bsc#1217990). Calling modprobe is is needed on these tests:
> It looks like also keyctl05 requires modprobe for part of the functionality
> https://lore.kernel.org/ltp/20240110175931.GA1766165@pevik/
> => it would be another user of .modprobe_module (unless there is a way to
> trigger automatic loading of dns_resolver module).
keyctl05 modprobe implemented, this should be merged before the release:
https://lore.kernel.org/ltp/20240111094530.1893262-1-pvorel@suse.cz/
NOTE: These rare cases where automatic module loading is not possible to detect
justify .modprobe_module, but I'd keep it as a last result. If possible
.needs_drivers should be used. I'll add it to upcoming version (probably not for
this release).
I also wonder if naming is not misleading, we have:
1) .needs_drivers (in shell API $TST_NEEDS_DRIVERS) - expect we find kernel
module in standard location, e.g. in /lib/modules/$(uname -r)
=> IMHO it should be .needs_module (and $TST_NEEDS_MODULE in shell), but that
would somehow clash with already used $TST_NEEDS_MODULE (see below)
2) .modprobe_module (again, kernel module in standard location, but just loaded,
not yet implemented)
3) tst_require_module() in shell API only hooked via $TST_NEEDS_MODULE, which
tries to load module build by LTP (out-of-tree module), used in insmod01.sh
(ltp_insmod01.ko). There is no equivalent functionality for C API
({delete,finit,init}_module tests just use tst_module.h, but there is no
helper in struct tst_test.
=> could we come up with better name for current $TST_NEEDS_MODULE?
If we rename it, we could then use "needs_module" for 1).
Kind regards,
Petr
> Kind regards,
> Petr
> > ** testcases/network/can/cve/can_bcm01.c
> > modprobe on can_bcm01.c is required to fix failures on sle-12-SP3 which uses
> > 4.4 based kernel (I'm not sure if the problem is on mainline as well):
> > can_bcm01.c:44: TBROK: Failed to create vcan device ltp_vcan0: EOPNOTSUPP
> > can_bcm01.c:126: TWARN: Failed to remove netdevice ltp_vcan0: ENODEV
> > Maybe we should call modprobe only on kernel <= 4.4 (to test automatic
> > module loading on newer kernels where it's supposed to work), but it would
> > not be possible to implement it via .modprobe_module. Adding
> > tst_modprobe_module(), which I was asked by Li would allow to call it only
> > for older kernel.
> > ** testcases/kernel/syscalls/madvise/madvise11.c
> > .modprobe_module does a lot of simplification here (I should verify, if it
> > really detects a bug on kernels with reverted d4ae9916ea29).
> > BTW madvise11.c writes to /dev/kmsg, which is also done in kmsg01.c (+
> > deprecated ltp-pan.c). I'm not sure if it's worth to move this code to
> > library when only 2 tests use it, but generic code like this certainly
> > belongs to the library. Maybe we could write starting of the test in
> > /dev/kmsg in the library for tests which runs under root (getuid() == 0 or
> > on tests with .needs_root = 1).
> > Also I mentioned in the pathset tests which use modprobe but using
> > .modprobe_module is not usable:
> > ** kvm_pagefault01.c would require module parameters, which can be actually
> > useful. But it also uses reloading module (via test specific reload_module()
> > function), e.g. something used only in this test.
> > ** zram03.c, zram_lib.sh (too complicated check due /sys/class/zram-control
> > introduced in v4.2-rc1 vs. the old API, but maybe this could be simplified).
> > Again, tst_modprobe_module() would remove code duplication.
> > ** netstress.c (used only when testing dccp, which is determined by getopts)
> > => use tst_modprobe_module()
> > Implementing tst_modprobe_module() in the library would reduce some code, I'll
> > probably implement it.
> > What about .modprobe_module? We have tests which load kernel modules from LTP
> > via insmod and rmmod via tst_module_load(), tst_module_unload() (at least
> > delete_module03.c needs it, possibly others). Maybe rename them to
> > tst_insmod_module() and tst_rmmod_module() and create tst_module_unload() which
> > would use "modprobe -r" which would be used in can_bcm01.c, madvise11.c,
> > netstress.c, zram03.c and in .modprobe_module (in cleanup phase) if implemented?
> ...
> Kind regards,
> Petr
--
Mailing list info: https://lists.linux.it/listinfo/ltp
next prev parent reply other threads:[~2024-01-11 10:28 UTC|newest]
Thread overview: 152+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-02 12:53 [LTP] LTP Release preparations Cyril Hrubis
2024-01-02 21:01 ` Petr Vorel
2024-01-10 18:06 ` Petr Vorel
2024-01-11 10:28 ` Petr Vorel [this message]
2024-01-02 21:07 ` [LTP] Kirk update [was Re: LTP Release preparations] Petr Vorel
2024-01-08 16:17 ` Andrea Cervesato via ltp
2024-01-03 1:57 ` [LTP] LTP Release preparations Petr Vorel
2024-01-03 8:43 ` Yang Xu (Fujitsu)
2024-01-04 12:26 ` Petr Vorel
2024-01-04 12:35 ` Cyril Hrubis
2024-01-18 14:44 ` Cyril Hrubis
2024-01-25 10:17 ` Li Wang
2024-01-25 11:04 ` Cyril Hrubis
2024-01-26 10:40 ` Li Wang
-- strict thread matches above, loose matches on Subject: below --
2025-09-01 10:20 Cyril Hrubis
2025-09-02 10:23 ` Andrea Cervesato via ltp
2025-09-02 10:40 ` Ricardo B. Marlière via ltp
2025-09-02 10:45 ` Ricardo B. Marlière via ltp
2025-09-02 11:52 ` Martin Doucha
2025-09-02 12:14 ` Cyril Hrubis
2025-09-02 12:42 ` Martin Doucha
2025-09-03 12:05 ` Andrea Cervesato via ltp
2025-09-03 12:16 ` Cyril Hrubis
2025-09-03 13:20 ` Cyril Hrubis
2025-09-04 2:39 ` Li Wang via ltp
2025-09-04 3:06 ` Li Wang via ltp
2025-09-04 5:42 ` Andrea Cervesato via ltp
2025-09-04 6:29 ` Li Wang via ltp
2025-09-04 6:32 ` Andrea Cervesato via ltp
2025-09-04 9:53 ` Cyril Hrubis
2025-09-04 10:15 ` Li Wang via ltp
2025-09-04 10:22 ` Cyril Hrubis
2025-09-03 13:18 ` Petr Vorel
2025-09-03 13:21 ` Cyril Hrubis
2025-09-05 6:24 ` Andrea Cervesato via ltp
2025-09-05 8:12 ` Wei Gao via ltp
2025-09-05 9:05 ` Petr Vorel
2025-09-05 9:02 ` Avinesh Kumar
2025-09-23 2:28 ` Li Wang via ltp
2025-09-26 12:41 ` Petr Vorel
2025-09-26 14:23 ` Cyril Hrubis
2025-05-02 9:45 [LTP] LTP release preparations Cyril Hrubis
2025-05-05 10:56 ` Martin Doucha
2025-05-07 15:51 ` Martin Doucha
2025-05-07 17:54 ` Petr Vorel
2025-05-07 17:57 ` Petr Vorel
2025-05-27 5:41 ` Li Wang via ltp
2025-05-27 7:05 ` Cyril Hrubis
2025-05-27 9:27 ` Andrea Cervesato via ltp
2025-05-27 9:33 ` Cyril Hrubis
2025-01-06 12:17 [LTP] LTP Release preparations Cyril Hrubis
2025-01-06 12:52 ` Andrea Cervesato via ltp
2025-01-06 15:45 ` Petr Vorel
2025-01-06 15:57 ` Cyril Hrubis
2025-01-08 2:57 ` Li Wang
2025-01-17 14:06 ` Cyril Hrubis
2025-01-17 14:57 ` Martin Doucha
2025-01-17 15:01 ` Cyril Hrubis
2025-01-20 10:31 ` Li Wang
2025-01-20 11:59 ` Andrea Cervesato via ltp
2024-09-02 9:54 [LTP] LTP release preparations Cyril Hrubis
2024-09-09 12:39 ` Andrea Cervesato via ltp
2024-09-09 12:44 ` Cyril Hrubis
2024-09-09 12:43 ` Andrea Cervesato via ltp
2024-09-16 8:22 ` Cyril Hrubis
2024-09-16 8:25 ` Andrea Cervesato via ltp
2024-09-18 15:14 ` Cyril Hrubis
2024-09-20 10:13 ` Li Wang
2024-09-20 10:30 ` Cyril Hrubis
2024-09-27 8:38 ` Cyril Hrubis
2024-09-27 9:26 ` Andrea Cervesato via ltp
2024-09-27 9:35 ` Cyril Hrubis
2024-09-27 10:23 ` Andrea Cervesato via ltp
2023-09-13 8:56 [LTP] LTP Release preparations Cyril Hrubis
2023-09-13 9:45 ` Martin Doucha
2023-09-13 9:53 ` Andrea Cervesato via ltp
2023-09-13 11:18 ` Cyril Hrubis
2023-09-15 7:07 ` Petr Vorel
2023-09-15 12:03 ` Petr Vorel
2023-09-15 13:46 ` Petr Vorel
2023-09-15 13:02 ` Andrea Cervesato via ltp
2023-09-15 14:01 ` Cyril Hrubis
2023-09-18 11:23 ` Petr Vorel
2023-09-19 9:33 ` Richard Palethorpe
2023-09-26 10:50 ` Petr Vorel
2023-09-28 7:44 ` Li Wang
2023-09-28 17:39 ` Petr Vorel
2023-09-30 0:11 ` Edward Liaw via ltp
2023-09-30 6:22 ` Petr Vorel
2025-09-05 2:10 ` Wei Gao via ltp
2025-09-05 6:22 ` Andrea Cervesato via ltp
2025-09-05 8:11 ` Wei Gao via ltp
2023-04-26 9:17 [LTP] LTP release preparations Cyril Hrubis
2023-04-26 10:01 ` Li Wang
2023-04-26 10:08 ` Li Wang
2023-05-08 12:31 ` Li Wang
2023-05-09 9:29 ` Cyril Hrubis
2023-05-10 6:39 ` Li Wang
2023-05-10 13:03 ` Petr Vorel
2023-05-11 5:48 ` Li Wang
2023-05-15 13:15 ` Cyril Hrubis
2023-05-16 4:58 ` Petr Vorel
2023-05-16 5:35 ` Petr Vorel
2023-05-16 5:46 ` Petr Vorel
2023-04-26 10:07 ` Teo Couprie Diaz
2023-04-27 14:06 ` Andrea Cervesato via ltp
2023-04-28 9:12 ` Yang Xu (Fujitsu)
2023-05-02 12:18 ` Cyril Hrubis
2023-05-08 5:27 ` Yang Xu (Fujitsu)
2023-05-02 14:37 ` Petr Vorel
2023-05-02 15:14 ` Petr Vorel
2023-05-03 9:35 ` Cyril Hrubis
2023-05-03 16:32 ` Petr Vorel
2023-05-04 10:28 ` Petr Vorel
2023-05-03 9:31 ` Cyril Hrubis
2023-05-03 12:56 ` Petr Vorel
2023-05-04 13:17 ` Petr Vorel
2023-05-04 13:44 ` Cyril Hrubis
2023-05-04 20:37 ` Petr Vorel
2023-05-05 16:55 ` Petr Vorel
2023-05-10 12:59 ` Martin Doucha
2023-05-10 13:15 ` Cyril Hrubis
2022-05-09 12:50 Cyril Hrubis
2022-05-09 13:51 ` Petr Vorel
2022-05-10 8:36 ` Li Wang
2022-05-10 13:54 ` Cyril Hrubis
2022-05-19 11:42 ` Martin Doucha
2022-05-19 12:11 ` Cyril Hrubis
2022-05-24 13:01 ` Cyril Hrubis
2022-01-05 11:36 [LTP] LTP Release preparations Cyril Hrubis
2022-01-05 14:45 ` Amir Goldstein
2022-01-05 14:53 ` Cyril Hrubis
2022-01-05 16:57 ` Petr Vorel
2022-01-06 9:52 ` xuyang2018.jy
2022-01-07 9:06 ` Li Wang
2022-01-07 9:51 ` Cyril Hrubis
2022-01-14 9:47 ` Cyril Hrubis
2018-04-12 11:35 Cyril Hrubis
2018-04-19 14:17 ` Cyril Hrubis
2018-04-20 3:56 ` Li Wang
2018-04-20 10:49 ` Petr Vorel
2018-04-24 13:39 ` Cyril Hrubis
2018-04-24 21:08 ` Jan Stancek
2018-04-25 13:23 ` Cyril Hrubis
2018-04-25 13:42 ` Jan Stancek
2018-04-25 13:44 ` Cyril Hrubis
2018-04-25 14:11 ` Petr Vorel
2018-05-03 9:28 ` Cyril Hrubis
2018-05-03 11:41 ` Alexey Kodanev
2018-05-03 12:06 ` Petr Vorel
2018-05-11 12:17 ` Cyril Hrubis
2016-01-05 15:36 [LTP] LTP release preparations Cyril Hrubis
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=20240111102808.GA1893382@pevik \
--to=pvorel@suse.cz \
--cc=chrubis@suse.cz \
--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