Re: [LTP] [PATCH 5/6] [WIP,RFC] tst_run.sh: Run setup() only once

Cyril Hrubis
2026-03-18T12:26:25Z

Hi!
> It's a bit more complicated we do not have only iterations but also
> duration and timeout per iteration. So we would need a function that
> would return if the script should continue or not and also call the
> heartbeat() function. Something as:
>
> int tst_next_shell_iteration(void)
> {
> int cont = 0;
> static int iteration = 0;
>
> if (iteration < iterations)
> cont = 1;
>
> if (stop_time && get_time_ms() < stop_time())
> cont = 1;
>
> if (!cont)
> return 0;
>
> heartbeat();
> return ++iteration;
> }
>
> The shell helper would call this and we would use it in tst_run.sh and
> loop the tst_test() until we are said to stop.

Note also that this solution would move the iteration into the shell
script, since if we do not iterate in the shell, we will end up with a
different environment in the second and subsequent iterations. That
means that any variables exported in setup() would be lost in subsequent
iterations, the pid of the shell would be different, etc.

--
Cyril Hrubis
chrubis@suse.cz