On Fri, Aug 7, 2026 at 7:22 PM Xavier Simonart via dev < [email protected]> wrote:
> Replace consecutive M_START_TCPDUMP calls with the M_START_TCPDUMPS macro > to parallelize tcpdump startup. > > Signed-off-by: Xavier Simonart <[email protected]> > --- > tests/multinode.at | 90 +++++++++++++++++++++++----------------------- > 1 file changed, 45 insertions(+), 45 deletions(-) > > diff --git a/tests/multinode.at b/tests/multinode.at > index 9dab187d4..d7fde2e26 100644 > --- a/tests/multinode.at > +++ b/tests/multinode.at > @@ -1197,8 +1197,8 @@ check multinode_nbctl set logical_switch_port ln-sw1 > tag_request=101 > > check multinode_nbctl --wait=hv sync > > -M_START_TCPDUMP([ovn-chassis-1], [-c 2 -neei genev_sys_6081 icmp], > [ch1_genev]) > -M_START_TCPDUMP([ovn-chassis-1], [-c 2 -neei eth2 icmp], [ch1_eth2]) > +M_START_TCPDUMPS([ovn-chassis-1], [-c 2 -neei genev_sys_6081 icmp], > [ch1_genev], > + [ovn-chassis-1], [-c 2 -neei eth2 icmp], [ch1_eth2]) > > M_NS_CHECK_EXEC([ovn-chassis-1], [sw0p1], [ping -q -c 3 -i 0.3 -w 2 > 10.0.0.4 | FORMAT_PING], \ > [0], [dnl > @@ -1217,8 +1217,8 @@ m_as ovn-chassis-1 killall tcpdump > rm -f *.tcpdump > rm -f *.stderr > > -M_START_TCPDUMP([ovn-chassis-1], [-c 2 -neei genev_sys_6081 icmp], > [ch1_genev]) > -M_START_TCPDUMP([ovn-chassis-1], [-c 2 -neei eth2 icmp], [ch1_eth2]) > +M_START_TCPDUMPS([ovn-chassis-1], [-c 2 -neei genev_sys_6081 icmp], > [ch1_genev], > + [ovn-chassis-1], [-c 2 -neei eth2 icmp], [ch1_eth2]) > > M_NS_CHECK_EXEC([ovn-chassis-1], [sw0p1], [ping -q -c 3 -i 0.3 -w 2 > 20.0.0.3 | FORMAT_PING], \ > [0], [dnl > @@ -1242,8 +1242,8 @@ m_as ovn-chassis-1 killall tcpdump > rm -f *.tcpdump > rm -f *.stderr > > -M_START_TCPDUMP([ovn-chassis-1], [-c 2 -neei genev_sys_6081 icmp], > [ch1_genev]) > -M_START_TCPDUMP([ovn-chassis-1], [-c 2 -neei eth2 icmp], [ch1_eth2]) > +M_START_TCPDUMPS([ovn-chassis-1], [-c 2 -neei genev_sys_6081 icmp], > [ch1_genev], > + [ovn-chassis-1], [-c 2 -neei eth2 icmp], [ch1_eth2]) > > M_NS_CHECK_EXEC([ovn-chassis-1], [sw0p1], [ping -q -c 3 -i 0.3 -w 2 > 10.0.0.4 | FORMAT_PING], \ > [0], [dnl > @@ -1262,8 +1262,8 @@ m_as ovn-chassis-1 killall tcpdump > rm -f *.tcpdump > rm -f *.stderr > > -M_START_TCPDUMP([ovn-chassis-1], [-c 2 -neei genev_sys_6081 icmp], > [ch1_genev]) > -M_START_TCPDUMP([ovn-chassis-1], [-c 2 -neei eth2 icmp], [ch1_eth2]) > +M_START_TCPDUMPS([ovn-chassis-1], [-c 2 -neei genev_sys_6081 icmp], > [ch1_genev], > + [ovn-chassis-1], [-c 2 -neei eth2 icmp], [ch1_eth2]) > > M_NS_CHECK_EXEC([ovn-chassis-1], [sw0p1], [ping -q -c 3 -i 0.3 -w 2 > 20.0.0.3 | FORMAT_PING], \ > [0], [dnl > @@ -1286,8 +1286,8 @@ rm -f *.stderr > check multinode_nbctl --wait=hv lsp-del ln-sw1 > # Traffic from sw0p1 to sw1p1 should be tunneled. > > -M_START_TCPDUMP([ovn-chassis-1], [-c 2 -neei genev_sys_6081 icmp], > [ch1_genev]) > -M_START_TCPDUMP([ovn-chassis-1], [-c 2 -neei eth2 icmp], [ch1_eth2]) > +M_START_TCPDUMPS([ovn-chassis-1], [-c 2 -neei genev_sys_6081 icmp], > [ch1_genev], > + [ovn-chassis-1], [-c 2 -neei eth2 icmp], [ch1_eth2]) > > M_NS_CHECK_EXEC([ovn-chassis-1], [sw0p1], [ping -q -c 3 -i 0.3 -w 2 > 20.0.0.3 | FORMAT_PING], \ > [0], [dnl > @@ -1318,9 +1318,9 @@ m_as ovn-gw-1 ip netns exec sw0-p10 ip link set > sw0-p10 address 32:31:8c:da:64:4 > # sw0p1 -> br-int -> localnet port (vlan tagged 100) -> br-ex -> eth2 of > ovn-chassis-1 to > # eth2 of ovn-gw-1 -> br-ex -> sw0-p10 > > -M_START_TCPDUMP([ovn-chassis-1], [-c 2 -neei genev_sys_6081 icmp], > [ch1_genev]) > -M_START_TCPDUMP([ovn-chassis-1], [-c 2 -neei eth2 icmp], [ch1_eth2]) > -M_START_TCPDUMP([ovn-gw-1], [-c 2 -neei eth2 icmp], [gw1_eth2]) > +M_START_TCPDUMPS([ovn-chassis-1], [-c 2 -neei genev_sys_6081 icmp], > [ch1_genev], > + [ovn-chassis-1], [-c 2 -neei eth2 icmp], [ch1_eth2], > + [ovn-gw-1], [-c 2 -neei eth2 icmp], [gw1_eth2]) > > M_NS_CHECK_EXEC([ovn-chassis-1], [sw0p1], [ping -q -c 3 -i 0.3 -w 2 > 10.0.0.10 | FORMAT_PING], \ > [0], [dnl > @@ -1356,12 +1356,12 @@ check multinode_nbctl --wait=hv lr-nat-add lr0 > dnat_and_snat 172.20.0.110 10.0.0 > # -> ln-public -> br-ex -> eth2 -> ovn-chassis-1 -> br-ex -> ln-public > -> br-int -> > # -> DNAT 172.20.0.110 to 10.0.0.3 -> sw0-p1 with src ip 172.20.0.100 > and dst ip 10.0.0.3. > > -M_START_TCPDUMP([ovn-chassis-2], [-c 2 -neei genev_sys_6081 icmp], > [ch2_genev]) > -M_START_TCPDUMP([ovn-chassis-2], [-c 2 -neei eth2 icmp], [ch2_eth2]) > -M_START_TCPDUMP([ovn-gw-1], [-c 2 -neei genev_sys_6081 icmp], > [gw1_geneve]) > -M_START_TCPDUMP([ovn-gw-1], [-c 2 -neei eth2 icmp], [gw1_eth2]) > -M_START_TCPDUMP([ovn-chassis-1], [-c 2 -neei genev_sys_6081 icmp], > [ch1_genev]) > -M_START_TCPDUMP([ovn-chassis-1], [-c 2 -neei eth2 icmp], [ch1_eth2]) > +M_START_TCPDUMPS([ovn-chassis-2], [-c 2 -neei genev_sys_6081 icmp], > [ch2_genev], > + [ovn-chassis-2], [-c 2 -neei eth2 icmp], [ch2_eth2], > + [ovn-gw-1], [-c 2 -neei genev_sys_6081 icmp], > [gw1_geneve], > + [ovn-gw-1], [-c 2 -neei eth2 icmp], [gw1_eth2], > + [ovn-chassis-1], [-c 2 -neei genev_sys_6081 icmp], > [ch1_genev], > + [ovn-chassis-1], [-c 2 -neei eth2 icmp], [ch1_eth2]) > > M_NS_CHECK_EXEC([ovn-chassis-2], [sw1p1], [ping -q -c 3 -i 0.3 -w 2 > 172.20.0.110 | FORMAT_PING], \ > [0], [dnl > @@ -1407,12 +1407,12 @@ check multinode_nbctl --wait=hv lr-nat-add lr0 > dnat_and_snat 172.20.0.110 10.0.0 > # sw1-p1 in ovn-chassis-2 -> tunnel -> ovn-gw-1 -> In ovn-gw-1 SNAT > 20.0.0.3 to 172.20.0.100 -> > # DNAT 172.20.0.110 -> 10.0.0.3 -> tunnel -> ovn-chassis-1 -> br-int -> > sw0p1 > > -M_START_TCPDUMP([ovn-chassis-2], [-c 2 -neei genev_sys_6081 icmp], > [ch2_genev]) > -M_START_TCPDUMP([ovn-chassis-2], [-c 2 -neei eth2 icmp], [ch2_eth2]) > -M_START_TCPDUMP([ovn-gw-1], [-c 4 -neei genev_sys_6081 icmp], > [gw1_geneve]) > -M_START_TCPDUMP([ovn-gw-1], [-c 4 -neei eth2 icmp], [gw1_eth2]) > -M_START_TCPDUMP([ovn-chassis-1], [-c 2 -neei genev_sys_6081 icmp], > [ch1_genev]) > -M_START_TCPDUMP([ovn-chassis-1], [-c 2 -neei eth2 icmp], [ch1_eth2]) > +M_START_TCPDUMPS([ovn-chassis-2], [-c 2 -neei genev_sys_6081 icmp], > [ch2_genev], > + [ovn-chassis-2], [-c 2 -neei eth2 icmp], [ch2_eth2], > + [ovn-gw-1], [-c 4 -neei genev_sys_6081 icmp], > [gw1_geneve], > + [ovn-gw-1], [-c 4 -neei eth2 icmp], [gw1_eth2], > + [ovn-chassis-1], [-c 2 -neei genev_sys_6081 icmp], > [ch1_genev], > + [ovn-chassis-1], [-c 2 -neei eth2 icmp], [ch1_eth2]) > > M_NS_CHECK_EXEC([ovn-chassis-2], [sw1p1], [ping -q -c 3 -i 0.3 -w 2 > 172.20.0.110 | FORMAT_PING], \ > [0], [dnl > @@ -2585,8 +2585,8 @@ M_NS_CHECK_EXEC([ovn-chassis-1], [external], [ping > -q -c 5 -i 0.3 -w 2 10:200::2 > > M_NS_CHECK_EXEC([ovn-chassis-1], [mgmt], [ip a a 172.16.100.2/24 dev > mgmt]) > M_NS_DAEMONIZE([ovn-chassis-1], [pod10], [nc -e /bin/cat -v -l -o > server.log 10.100.200.10 2324], [pod10.pid]) > -M_START_TCPDUMP([ovn-chassis-1], [-neei pod10-p ip], [pod10]) > -M_START_TCPDUMP([ovn-chassis-1], [-neei mgmt-p ip], [mgmt]) > +M_START_TCPDUMPS([ovn-chassis-1], [-neei pod10-p ip], [pod10], > + [ovn-chassis-1], [-neei mgmt-p ip], [mgmt]) > > m_as ovn-chassis-1 sh -c 'echo -e "Hello\nHello" > msg.expected' > check m_as ovn-chassis-1 ovn-nbctl --policy="src-ip" lr-route-add tr > 10.100.200.0/24 10.100.200.11 > @@ -2716,14 +2716,14 @@ done > > m_wait_for_ports_up > > -M_START_TCPDUMP([ovn-chassis-1], [-neei genev_sys_6081 arp or ip], > [ch1_genev]) > -M_START_TCPDUMP([ovn-chassis-1], [-neei migrator-p arp or ip], > [ch1_migrator]) > -M_START_TCPDUMP([ovn-chassis-2], [-neei genev_sys_6081 arp or ip], > [ch2_genev]) > -for i in 1 2 3; do > - M_START_TCPDUMP([ovn-chassis-${i}], [-neei sw0-port${i}-p arp or ip], > [ch${i}_sw0-port${i}]) > -done > -M_START_TCPDUMP([ovn-chassis-3], [-neei genev_sys_6081 arp or ip], > [ch3_genev]) > -M_START_TCPDUMP([ovn-chassis-3], [-neei migrator-p arp or ip], > [ch3_migrator]) > +M_START_TCPDUMPS([ovn-chassis-1], [-neei genev_sys_6081 arp or ip], > [ch1_genev], > + [ovn-chassis-1], [-neei migrator-p arp or ip], > [ch1_migrator], > + [ovn-chassis-2], [-neei genev_sys_6081 arp or ip], > [ch2_genev], > + [ovn-chassis-1], [-neei sw0-port1-p arp or ip], > [ch1_sw0-port1], > + [ovn-chassis-2], [-neei sw0-port2-p arp or ip], > [ch2_sw0-port2], > + [ovn-chassis-3], [-neei sw0-port3-p arp or ip], > [ch3_sw0-port3], > + [ovn-chassis-3], [-neei genev_sys_6081 arp or ip], > [ch3_genev], > + [ovn-chassis-3], [-neei migrator-p arp or ip], > [ch3_migrator]) > > AS_BOX([Migration with vifs]) > for i in 1 2 3; do > @@ -3230,14 +3230,14 @@ check multinode_nbctl --wait=hv sync > > start_tcpdump() { > echo "$(date +%H:%M:%S.%03N) Starting tcpdump" > - M_START_TCPDUMP([ovn-chassis-1], [-neei hv1-vif1-p], [ch1]) > - M_START_TCPDUMP([ovn-chassis-2], [-neei eth2], [ch2]) > - M_START_TCPDUMP([ovn-gw-1], [-neei eth2], [gw1]) > - M_START_TCPDUMP([ovn-gw-1], [-neei eth2 -Q out], [gw1_out]) > - M_START_TCPDUMP([ovn-gw-2], [-neei eth2], [gw2]) > - M_START_TCPDUMP([ovn-gw-2], [-neei eth2 -Q out], [gw2_out]) > - M_START_TCPDUMP([ovn-gw-3], [-neei eth2], [gw3]) > - M_START_TCPDUMP([ovn-gw-3], [-neei eth2 -Q out], [gw3_out]) > + M_START_TCPDUMPS([ovn-chassis-1], [-neei hv1-vif1-p], [ch1], > + [ovn-chassis-2], [-neei eth2], [ch2], > + [ovn-gw-1], [-neei eth2], [gw1], > + [ovn-gw-1], [-neei eth2 -Q out], [gw1_out], > + [ovn-gw-2], [-neei eth2], [gw2], > + [ovn-gw-2], [-neei eth2 -Q out], [gw2_out], > + [ovn-gw-3], [-neei eth2], [gw3], > + [ovn-gw-3], [-neei eth2 -Q out], [gw3_out]) > } > > stop_tcpdump() { > @@ -5186,8 +5186,8 @@ M_START_L4_SERVER([ovn-chassis-2], [ls1p3], > [192.168.1.3], [10880], [ls1p3], [ls > # Capture traffic to verify load balancing occurs locally without > east-west traffic > for i in {1..2}; do > node_name="ovn-chassis-$i" > - M_START_TCPDUMP([$node_name], [-c 2 -neei genev_sys_6081 port 10880], > [ch${i}_genev]) > - M_START_TCPDUMP([$node_name], [-c 2 -neei eth2 port 10880], > [ch${i}_eth2]) > + M_START_TCPDUMPS([$node_name], [-c 2 -neei genev_sys_6081 port > 10880], [ch${i}_genev], > + [$node_name], [-c 2 -neei eth2 port 10880], > [ch${i}_eth2]) > done > > AT_CHECK([m_as ovn-gw-1 /bin/bash -c 'for i in $(seq 500); \ > -- > 2.47.1 > > _______________________________________________ > dev mailing list > [email protected] > https://mail.openvswitch.org/mailman/listinfo/ovs-dev > > Thank you Xavier, applied to main and 26.03. Regards, Ales _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
