On Thu, Jun 08, 2017 at 10:53:05AM -0700, Ben Pfaff wrote:
> On Thu, Jun 08, 2017 at 02:30:48PM -0300, Flavio Leitner wrote:
> > The daemon is killed leaving resources behind when a test fails.
> > This fixes to first signal the daemon to exit gracefully.
> > 
> > Suggested-by: Joe Stringer <[email protected]>
> > Fixes: 0f28164be02ac ("netdev-linux: make tap devices persistent")
> > Signed-off-by: Flavio Leitner <[email protected]>
> > ---
> >  tests/ofproto-macros.at | 3 +++
> >  1 file changed, 3 insertions(+)
> > 
> > diff --git a/tests/ofproto-macros.at b/tests/ofproto-macros.at
> > index faff5b0..5ac5d05 100644
> > --- a/tests/ofproto-macros.at
> > +++ b/tests/ofproto-macros.at
> > @@ -323,6 +323,9 @@ m4_define([_OVS_VSWITCHD_START],
> >     AT_CHECK([ovs-vswitchd $1 --detach --no-chdir --pidfile --log-file 
> > -vvconn -vofproto_dpif -vunixctl], [0], [], [stderr])
> >     AT_CAPTURE_FILE([ovs-vswitchd.log])
> >     on_exit "kill `cat ovs-vswitchd.pid`"
> > +   dnl Wait for the daemon to exit gracefully
> > +   on_exit "for i in 1 2 3 4 5 6 7 8 9; do kill -0 `cat ovs-vswitchd.pid` 
> > || break; sleep 0.1 || sleep 1; done"
> > +   on_exit "ovs-appctl -t ovs-vswitchd exit --cleanup"
> 
> Thanks for the patch.
> 
> At first, I thought that this did the steps in the wrong order, but
> "on_exit" reverses the order. 

That's documented! :)


> It would be less surprising to do this with just one call to on_exit,
> e.g.
> 
> on_exit '
>     ovs-appctl -t ovs-vswitchd exit --cleanup
>     for i in 1 2 3 4 5 6 7 8 9; do
>         kill -0 `cat ovs-vswitchd.pid` || break
>         sleep 0.1 || sleep 1
>     done
>     kill `cat ovs-vswitchd.pid`
> '
> 
> Actually, I think that all of this could be put in a shell function:
> 
> kill_ovs_vswitchd() {
>     ovs-appctl -t ovs-vswitchd exit --cleanup
>     for i in 1 2 3 4 5 6 7 8 9; do
>         kill -0 `cat ovs-vswitchd.pid` || break
>         sleep 0.1 || sleep 1
>     done
>     kill `cat ovs-vswitchd.pid`
> }
> 
> and then just "on_exit kill_ovs_vswitchd".  Maybe that is the best
> approach.

I agree, let me respin the patch.

-- 
Flavio

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to