[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