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@xxxxxxxxxx>
---
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 \
+ --timeout 1000 KILL $pid 2>/dev/null"
fi
}
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 () {