Message ID | 20240216152846.1850120-4-aconole@redhat.com (mailing list archive) |
---|---|
State | RFC |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | selftests: openvswitch: cleanups for running as selftests | expand |
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 \ > + --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 () {
Adrian Moreno <amorenoz@redhat.com> writes: > 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 \ >> + --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: Okay, I'll adjust it. > -- > 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 () {
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 } @@ -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 () {
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(-)