On Wed, Jun 05, 2024 at 11:21:16AM +0200, Matthieu Baerts (NGI0) wrote:
> If errexit is enabled ('set -e'), loopy_wait -- or busywait and others
> using it -- will stop after the first failure.
>
> Note that if the returned status of loopy_wait is checked, and even if
> errexit is enabled, Bash will not stop at the first error.
>
> Fixes: 25ae948b4478 ("selftests/net: add lib.sh")
Not sure if the fixes tag should be c5341bcc337c ("selftests: mlxsw: Add a
self-test for port-default priority"), so the fixes could be backported to
stable kernel for forwarding/lib.sh. Others looks good to me.
Reviewed-by: Hangbin Liu <[email protected]>
> Cc: [email protected]
> Acked-by: Geliang Tang <[email protected]>
> Signed-off-by: Matthieu Baerts (NGI0) <[email protected]>
> ---
> tools/testing/selftests/net/lib.sh | 4 +---
> 1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/tools/testing/selftests/net/lib.sh b/tools/testing/selftests/net/lib.sh
> index edc030e81a46..a422e10d3d3a 100644
> --- a/tools/testing/selftests/net/lib.sh
> +++ b/tools/testing/selftests/net/lib.sh
> @@ -67,9 +67,7 @@ loopy_wait()
> while true
> do
> local out
> - out=$("$@")
> - local ret=$?
> - if ((!ret)); then
> + if out=$("$@"); then
> echo -n "$out"
> return 0
> fi
>
> --
> 2.43.0
>
Hi Hangbin,
Thank you for your reply!
On 05/06/2024 11:44, Hangbin Liu wrote:
> On Wed, Jun 05, 2024 at 11:21:16AM +0200, Matthieu Baerts (NGI0) wrote:
>> If errexit is enabled ('set -e'), loopy_wait -- or busywait and others
>> using it -- will stop after the first failure.
>>
>> Note that if the returned status of loopy_wait is checked, and even if
>> errexit is enabled, Bash will not stop at the first error.
>>
>> Fixes: 25ae948b4478 ("selftests/net: add lib.sh")
>
> Not sure if the fixes tag should be c5341bcc337c ("selftests: mlxsw: Add a
> self-test for port-default priority"), so the fixes could be backported to
> stable kernel for forwarding/lib.sh.
Good point, I didn't notice it was coming from there.
I don't think that's needed: 'net/forwarding/lib.sh' is far from being
compatible with 'errexit', please look at all the utilisations of '$?'.
For 'net/lib.sh', that's different: some functions explicitly check for
'errexit' support. If I'm not mistaken, I fixed the only place where it
was not compatible with 'errexit'.
> Others looks good to me.
>
> Reviewed-by: Hangbin Liu <[email protected]>
Thank you for the review!
Cheers,
Matt
--
Sponsored by the NGI0 Core fund.