On Wed, Aug 14, 2024 at 03:57:57PM +0800, Hangbin Liu wrote: > --- > tools/testing/selftests/net/udpgro.sh | 41 ++++++++++++++++----------- > 1 file changed, 24 insertions(+), 17 deletions(-) > > diff --git a/tools/testing/selftests/net/udpgro.sh b/tools/testing/selftests/net/udpgro.sh > index 11a1ebda564f..7e0164247b83 100755 > --- a/tools/testing/selftests/net/udpgro.sh > +++ b/tools/testing/selftests/net/udpgro.sh > @@ -49,14 +49,15 @@ run_one() { > > cfg_veth > > - ip netns exec "${PEER_NS}" ./udpgso_bench_rx -C 1000 -R 10 ${rx_args} && \ > - echo "ok" || \ > - echo "failed" & > + ip netns exec "${PEER_NS}" ./udpgso_bench_rx -C 1000 -R 10 ${rx_args} & > + local PID1=$! > > wait_local_port_listen ${PEER_NS} 8000 udp > ./udpgso_bench_tx ${tx_args} > - ret=$? > - wait $(jobs -p) > + check_err $? > + wait ${PID1} > + check_err $? > + [ "$ret" -eq 0 ] && echo "ok" || echo "failed" > return $ret > } Self NACK. The ret need to define first in each function, or the check_err will failed... I forgot to the update the patch before post.. Thanks Hangbin