1
0
Fork 0
mirror of https://passt.top/passt synced 2025-05-31 13:25:34 +02:00

test: Rewrite test_iperf3

test_iperf3() is a pretty inscrutable mess of nested background processes.
It has a number of ugly sleeps needed to wait for things to complete.

Rewrite it to be cleaner:
  * Use the construct (a & b & wait) to run 'a' and 'b' in parallel, but
    then wait for them both to complete before continuing
  * This allows us to wait for both the server and client to finish, rather
    than sleeping
  * Use jq to do all the math we need to get the final result, rather than
    jq followed by some complicated 'bc' mangling

Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
David Gibson 2022-09-02 12:04:34 +10:00 committed by Stefano Brivio
parent 29247d0db6
commit e5e10aff81
4 changed files with 31 additions and 44 deletions
test/perf

View file

@ -11,8 +11,8 @@
# Copyright (c) 2021 Red Hat GmbH
# Author: Stefano Brivio <sbrivio@redhat.com>
gtools sysctl ip jq nproc seq sleep bc iperf3 tcp_rr tcp_crr # From neper
nstools sysctl ip jq nproc seq sleep bc iperf3 tcp_rr tcp_crr
gtools sysctl ip jq nproc seq sleep iperf3 tcp_rr tcp_crr # From neper
nstools sysctl ip jq nproc seq sleep iperf3 tcp_rr tcp_crr
htools bc head sed seq
# In this setup, virtio_net TX queue sometimes hangs, still under investigation