[ovs-dev] [PATCH] tests: Make OVS_WAIT_UNTIL and OVS_WAIT_WHILE failures easier to debug.

Yifeng Sun pkusunyifeng at gmail.com
Thu Feb 1 21:30:46 UTC 2018


Thanks for the change.

Tested-by: Yifeng Sun <pkusunyifeng at gmail.com>

Reviewed-by: Yifeng Sun <pkusunyifeng at gmail.com>

On Thu, Feb 1, 2018 at 10:08 AM, Ben Pfaff <blp at ovn.org> wrote:

> Until now, when OVS_WAIT_UNTIL or OVS_WAIT_WHILE ran, little information
> was available: usually nothing at all in the log, unless the wait failed,
> in which case there was a line number.  This commit adds a note saying
> what is being waited for in any case, and a message saying that the wait
> failed if it does.
>
> Signed-off-by: Ben Pfaff <blp at ovn.org>
> ---
>  tests/ovs-macros.at | 8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/tests/ovs-macros.at b/tests/ovs-macros.at
> index 324fdc887f78..f3ab3548a7fe 100644
> --- a/tests/ovs-macros.at
> +++ b/tests/ovs-macros.at
> @@ -239,11 +239,13 @@ fi
>  m4_divert_pop([PREPARE_TESTS])
>
>  m4_define([OVS_WAIT], [dnl
> +AS_ECHO(["AS_ESCAPE([$3: waiting $4...])"]) >&AS_MESSAGE_LOG_FD
>  ovs_wait_cond () {
>      $1
>  }
>  if ovs_wait; then :
>  else
> +    AS_ECHO(["AS_ESCAPE([$3: wait failed])"]) >&AS_MESSAGE_LOG_FD
>      $2
>      AT_FAIL_IF([:])
>  fi
> @@ -255,7 +257,8 @@ dnl Executes shell COMMAND in a loop until it returns
>  dnl zero return code.  If COMMAND did not return
>  dnl zero code within reasonable time limit, then
>  dnl the test fails.
> -m4_define([OVS_WAIT_UNTIL], [OVS_WAIT([$1], [$2])])
> +m4_define([OVS_WAIT_UNTIL],
> +  [OVS_WAIT([$1], [$2], [AT_LINE], [until $1])])
>
>  dnl OVS_WAIT_WHILE(COMMAND)
>  dnl
> @@ -264,7 +267,8 @@ dnl non-zero return code.  If COMMAND did not return
>  dnl non-zero code within reasonable time limit, then
>  dnl the test fails.
>  m4_define([OVS_WAIT_WHILE],
> -  [OVS_WAIT([if $1; then return 1; else return 0; fi], [$2])])
> +  [OVS_WAIT([if $1; then return 1; else return 0; fi], [$2],
> +            [AT_LINE], [while $1])])
>
>  dnl OVS_APP_EXIT_AND_WAIT(DAEMON)
>  dnl
> --
> 2.15.1
>
> _______________________________________________
> dev mailing list
> dev at openvswitch.org
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
>


More information about the dev mailing list