On Tue, Apr 01, 2014 at 09:41:49PM +0900, YAMAMOTO Takashi wrote: > >> On Mon, Mar 31, 2014 at 03:24:31PM +0900, YAMAMOTO Takashi wrote: > >>> These tests invokes ovs-ofctl monitor twice or more. > >>> Because "ovs-appctl -t ofctl exit" does not wait for the target > >>> process exit, there are chances to see the pid file from the previous > >>> incarnation. > >>> > >>> Signed-off-by: YAMAMOTO Takashi <yamam...@valinux.co.jp> > >> > >> Good catch. > >> > >> As an alternative, one could OVS_WAIT_UNTIL the pidfile disappears. > > > > it sounds like a better solution. i'll take a look. > > > > YAMAMOTO Takashi > > here's a patch. > > i guess someone familiar with m4 can create > OVS_APP_EXIT_AND_WAIT(appname) macro.
I think that it is as simple as this, but I have not tested it: diff --git a/tests/testsuite.at b/tests/testsuite.at index 772a7eb..a15b1f1 100644 --- a/tests/testsuite.at +++ b/tests/testsuite.at @@ -53,6 +53,14 @@ m4_define([OVS_WAIT_UNTIL], [OVS_WAIT([$1], [$2])]) m4_define([OVS_WAIT_WHILE], [OVS_WAIT([if $1; then return 1; else return 0; fi], [$2])]) +dnl OVS_APP_EXIT_AND_WAIT(DAEMON) +dnl +dnl Ask the daemon named DAEMON to exit, via ovs-appctl, and then waits for it +dnl to exit. +m4_define([OVS_APP_EXIT_AND_WAIT], + [ovs-appctl -t $1 exit + OVS_WAIT_WHILE([test -e $1.pid])]) + dnl ON_EXIT([COMMANDS]) dnl dnl Adds the shell COMMANDS to a collection executed when the current test Acked-by: Ben Pfaff <b...@nicira.com> _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev