On 2/16/24 16:28, Aaron Conole wrote:
Normally a spawned process under OVS is given a SIGTERM when the test ends as part of cleanup. However, in case the process is still lingering for some reason, we also send a SIGKILL to force it down faster.
Signed-off-by: Aaron Conole aconole@redhat.com
tools/testing/selftests/net/openvswitch/openvswitch.sh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/tools/testing/selftests/net/openvswitch/openvswitch.sh b/tools/testing/selftests/net/openvswitch/openvswitch.sh index a5dbde482ba4..678a72ad47c1 100755 --- a/tools/testing/selftests/net/openvswitch/openvswitch.sh +++ b/tools/testing/selftests/net/openvswitch/openvswitch.sh @@ -91,7 +91,8 @@ ovs_add_if () { python3 $ovs_base/ovs-dpctl.py add-if \ -u "$2" "$3" >$ovs_dir/$3.out 2>$ovs_dir/$3.err & pid=$!
on_exit "ovs_sbx $1 kill -TERM $pid 2>/dev/null"
on_exit "ovs_sbx $1 kill --timeout 1000 TERM \
fi }--timeout 1000 KILL $pid 2>/dev/null"
AFAIK, this will immediately send TERM, then wait 1s, send TERM again, wait 1s then send KILL. Is that what you intended? To avoid the double TERM you could:
kill --timeout 1000 KILL --signal TERM $pid
-- Adrián Moreno
@@ -108,7 +109,8 @@ ovs_netns_spawn_daemon() { info "spawning cmd: $*" ip netns exec $netns $* >> $ovs_dir/stdout 2>> $ovs_dir/stderr & pid=$!
- ovs_sbx "$sbx" on_exit "kill -TERM $pid 2>/dev/null"
- ovs_sbx "$sbx" on_exit "kill --timeout 1000 TERM \
}--timeout 1000 KILL $pid 2>/dev/null"
ovs_add_netns_and_veths () {