[LTP] [RFC] sched/starvation: Add disclaimer for virtualized/emulated environments
Petr Vorel
pvorel@suse.cz
Mon Jan 20 15:24:47 CET 2025
Hi Alessandro,
> This patch adds a disclaimer message to the starvation test case, warning
> users against running the test in virtualized or emulated environments.
> The test produces expected results only on bare-metal systems and is prone
> to failure when executed in non-bare-metal setups.
> While detecting virtualization or emulation is possible in some cases,
> the methods are unreliable.
> Rather than attempting to prevent the test from running in such
> environments, this patch provides a warning to inform users of the
> limitations.
> Change:
> - Added a TINFO message to notify users that the test should be run
> on bare-metal systems for meaningful results.
> Signed-off-by: Alessandro Carminati <acarmina@redhat.com>
> ---
> testcases/kernel/sched/cfs-scheduler/starvation.c | 3 +++
> 1 file changed, 3 insertions(+)
> diff --git a/testcases/kernel/sched/cfs-scheduler/starvation.c b/testcases/kernel/sched/cfs-scheduler/starvation.c
> index c620c9c3e..b779a5f0a 100644
> --- a/testcases/kernel/sched/cfs-scheduler/starvation.c
> +++ b/testcases/kernel/sched/cfs-scheduler/starvation.c
> @@ -115,6 +115,9 @@ static void setup(void)
> if (tst_has_slow_kconfig())
> tst_brk(TCONF, "Skip test due to slow kernel configuration");
> + tst_res(TINFO, "This test is designed to run on bare-metal systems. "
> + "Running it in a virtualized or emulated environment may produce unreliable results.");
We should at least wrap it with tst_is_virt(), make it shorter and add WARNING:
if (tst_is_virt(VIRT_ANY))
tst_res(TINFO, "WARNING: Running on a virtualized or emulated environment may produce unreliable results");
But OTOH I haven't seen any problem with it on various SLES versions nor in
openSUSE Tumbleweed (which uses latest mainline kernel). Therefore I would not
put TCONF, but just TINFO as you suggested (other tests which use tst_is_virt()
detection usually do TCONF).
Any idea what can cause instability on virtualized environments? Which kernel
options could be affected? ATM test is disabled due slow kernel config detection
on SLES/Tumbleweed (non-RT, tested on qemu) where it's working and this is not
enough to detect unstable results on the kernels you test.
I also send a patch to remove CONFIG_LATENCYTOP as option causing slow kernel.
Kind regards,
Petr
> +
> tst_set_runtime(timeout);
> }
More information about the ltp
mailing list