Hey Ben,

Looks good to me.

thanx!
mehak

On Fri, Jul 20, 2012 at 10:51 AM, Ben Pfaff <b...@nicira.com> wrote:

> At one point I got the "lcov" utilities to work well with OVS.  Then I
> didn't try to use them again for a year or so, and when I did I found that
> it didn't work at all.  I wasn't able to fix the problem easily, so it
> seems better to remove the feature than to leave around broken code.
>
> Signed-off-by: Ben Pfaff <b...@nicira.com>
> ---
>  README-gcov           |    6 ----
>  m4/openvswitch.m4     |    2 +-
>  tests/automake.mk     |   58
> ---------------------------------------------
>  tests/daemon.at       |    4 ---
>  tests/lcov-wrapper.in |   63
> -------------------------------------------------
>  tests/ovs-vsctl.at    |    5 ----
>  tests/uuid.at         |   20 ---------------
>  7 files changed, 1 insertions(+), 157 deletions(-)
>  delete mode 100755 tests/lcov-wrapper.in
>
> diff --git a/README-gcov b/README-gcov
> index 01c49cc..2fe9f3a 100644
> --- a/README-gcov
> +++ b/README-gcov
> @@ -16,9 +16,3 @@ code-coverage related options:
>    --enable-coverage=yes
>
>      Build with gcov code coverage support.
> -
> -    If you enable coverage and you have the "lcov" and "genhtml"
> -    programs in PATH, then you may run "make check-lcov" to produce a
> -    directory "tests/coverage.html" in the build directory with an
> -    analysis of the test suite's coverage.  lcov is available at
> -    http://ltp.sourceforge.net/coverage/lcov.php
> diff --git a/m4/openvswitch.m4 b/m4/openvswitch.m4
> index dca9f5f..eca6010 100644
> --- a/m4/openvswitch.m4
> +++ b/m4/openvswitch.m4
> @@ -22,7 +22,7 @@ AC_DEFUN([OVS_CHECK_COVERAGE],
>       [AC_HELP_STRING([--enable-coverage],
>                       [Enable gcov coverage tool.])],
>       [case "${enableval}" in
> -        (lcov|yes) coverage=true ;;
> +        (yes) coverage=true ;;
>          (no)  coverage=false ;;
>          (*) AC_MSG_ERROR([bad value ${enableval} for --enable-coverage])
> ;;
>        esac],
> diff --git a/tests/automake.mk b/tests/automake.mk
> index 3e42a3e..20f9e82 100644
> --- a/tests/automake.mk
> +++ b/tests/automake.mk
> @@ -84,64 +84,6 @@ check-pycov: all tests/atconfig tests/atlocal
> $(TESTSUITE) clean-pycov
>         @echo
>         @COVERAGE_FILE=$(COVERAGE_FILE) $(COVERAGE) report
>
> -# lcov support
> -
> -lcov_wrappers = \
> -       tests/lcov/ovs-appctl \
> -       tests/lcov/ovs-ofctl \
> -       tests/lcov/ovs-vsctl \
> -       tests/lcov/ovs-vswitchd \
> -       tests/lcov/ovsdb-client \
> -       tests/lcov/ovsdb-server \
> -       tests/lcov/ovsdb-tool \
> -       tests/lcov/test-aes128 \
> -       tests/lcov/test-bundle \
> -       tests/lcov/test-byte-order \
> -       tests/lcov/test-classifier \
> -       tests/lcov/test-csum \
> -       tests/lcov/test-file_name \
> -       tests/lcov/test-flows \
> -       tests/lcov/test-hash \
> -       tests/lcov/test-heap \
> -       tests/lcov/test-hmap \
> -       tests/lcov/test-json \
> -       tests/lcov/test-jsonrpc \
> -       tests/lcov/test-list \
> -       tests/lcov/test-lockfile \
> -       tests/lcov/test-multipath \
> -       tests/lcov/test-odp \
> -       tests/lcov/test-ovsdb \
> -       tests/lcov/test-packets \
> -       tests/lcov/test-random \
> -       tests/lcov/test-reconnect \
> -       tests/lcov/test-sha1 \
> -       tests/lcov/test-stp \
> -       tests/lcov/test-timeval \
> -       tests/lcov/test-type-props \
> -       tests/lcov/test-unix-socket \
> -       tests/lcov/test-uuid \
> -       tests/lcov/test-vconn
> -
> -$(lcov_wrappers): tests/lcov-wrapper.in
> -       @test -d tests/lcov || mkdir tests/lcov
> -       sed -e 's,[@]abs_top_builddir[@],$(abs_top_builddir),' \
> -           -e 's,[@]wrap_program[@],$@,' \
> -               $(top_srcdir)/tests/lcov-wrapper.in > $@.tmp
> -       chmod +x $@.tmp
> -       mv $@.tmp $@
> -CLEANFILES += $(lcov_wrappers)
> -EXTRA_DIST += tests/lcov-wrapper.in
> -
> -LCOV = lcov -b $(abs_top_builddir) -d $(abs_top_builddir) -q
> -check-lcov: all tests/atconfig tests/atlocal $(TESTSUITE) $(lcov_wrappers)
> -       rm -fr tests/coverage.html tests/coverage.info
> -       $(LCOV) -c -i -o - > tests/coverage.info
> -       $(SHELL) '$(TESTSUITE)' -C tests CHECK_LCOV=true
> DISABLE_LCOV=false AUTOTEST_PATH='tests/lcov:$(AUTOTEST_PATH)'
> $(TESTSUITEFLAGS); \
> -               rc=$$?; \
> -               echo "Producing coverage.html..."; \
> -               cd tests && genhtml -q -o coverage.html coverage.info; \
> -               exit $$rc
> -
>  # valgrind support
>
>  valgrind_wrappers = \
> diff --git a/tests/daemon.at b/tests/daemon.at
> index f188e7c..02a69b9 100644
> --- a/tests/daemon.at
> +++ b/tests/daemon.at
> @@ -1,7 +1,6 @@
>  AT_BANNER([daemon unit tests - C])
>
>  AT_SETUP([daemon])
> -AT_SKIP_IF([test "$CHECK_LCOV" = true]) # lcov wrapper make pids differ
>  OVSDB_INIT([db])
>  AT_CAPTURE_FILE([pid])
>  AT_CAPTURE_FILE([expected])
> @@ -20,7 +19,6 @@ AT_CHECK([test ! -e pid])
>  AT_CLEANUP
>
>  AT_SETUP([daemon --monitor])
> -AT_SKIP_IF([test "$CHECK_LCOV" = true]) # lcov wrapper make pids differ
>  OVSDB_INIT([db])
>  AT_CAPTURE_FILE([pid])
>  AT_CAPTURE_FILE([parent])
> @@ -69,7 +67,6 @@ OVS_WAIT_WHILE([kill -0 `cat parent` || kill -0 `cat
> newpid` || test -e pid],
>  AT_CLEANUP
>
>  AT_SETUP([daemon --detach])
> -AT_SKIP_IF([test "$CHECK_LCOV" = true]) # lcov wrapper make pids differ
>  AT_CAPTURE_FILE([pid])
>  OVSDB_INIT([db])
>  # Start the daemon and make sure that the pidfile exists immediately.
> @@ -86,7 +83,6 @@ AT_CHECK([test ! -e pid])
>  AT_CLEANUP
>
>  AT_SETUP([daemon --detach --monitor])
> -AT_SKIP_IF([test "$CHECK_LCOV" = true]) # lcov wrapper make pids differ
>  m4_define([CHECK],
>    [AT_CHECK([$1], [$2], [$3], [$4], [kill `cat daemon monitor`])])
>  OVSDB_INIT([db])
> diff --git a/tests/lcov-wrapper.in b/tests/lcov-wrapper.in
> deleted file mode 100755
> index 0c6a359..0000000
> --- a/tests/lcov-wrapper.in
> +++ /dev/null
> @@ -1,63 +0,0 @@
> -#! /bin/sh
> -
> -abs_top_builddir='@abs_top_builddir@'
> -wrap_program=`basename '@wrap_program@'`
> -
> -# Strip the first directory from $PATH that contains $wrap_program,
> -# so that below we run the real $wrap_program, not ourselves.
> -not_found=true
> -new_path=
> -first=true
> -save_IFS=$IFS
> -IFS=:
> -for dir in $PATH; do
> -    IFS=$save_IFS
> -    if $not_found && test -x "$dir/$wrap_program"; then
> -        not_found=false
> -    else
> -        if $first; then
> -            first=false
> -            new_path=$dir
> -        else
> -            new_path=$new_path:$dir
> -        fi
> -    fi
> -done
> -IFS=$save_IFS
> -if $not_found; then
> -    echo "$0: error: cannot find $wrap_program in \$PATH" >&2
> -    exit 1
> -fi
> -PATH=$new_path
> -export PATH
> -
> -if test "$DISABLE_LCOV" = true; then
> -    exec $wrap_program "$@"
> -    exit 1
> -fi
> -
> -# XXX Probably want some kind of synchronization here to deal with
> -# programs running in parallel.
> -LCOV="lcov -b $abs_top_builddir -d $abs_top_builddir -q"
> -$LCOV -z
> -
> -# Run the subprocess and propagate signals to it.
> -for signal in 1 2 3 5 15; do
> -    trap "kill -$signal \$!     # Propagate signal
> -          trap - $signal        # Reset signal to default
> -          wait                  # Wait for child to die
> -          kill -$signal $$      # Kill ourselves with same signal
> -          exit 1                # Exit in case 'kill' failed" $signal
> -done
> -$wrap_program 0<&0 "$@" &       # 0<&0 prevents shell from closing stdin
> -exec 0</dev/null                # Don't hold stdin open unnecessarily
> -wait $!; rc=$?
> -
> -# Run lcov, but only if some .gcda files were produced, since lcov
> -# complains otherwise.
> -for file in `find "$abs_top_builddir" -name '*.gcda'`; do
> -    $LCOV -c -o - >> "$abs_top_builddir/tests/coverage.info"
> -    break
> -done
> -
> -exit $rc
> diff --git a/tests/ovs-vsctl.at b/tests/ovs-vsctl.at
> index b9346cc..71c46cd 100644
> --- a/tests/ovs-vsctl.at
> +++ b/tests/ovs-vsctl.at
> @@ -896,11 +896,6 @@ AT_CLEANUP
>  AT_SETUP([database commands -- wait-until must wait])
>  AT_KEYWORDS([ovs-vsctl])
>
> -# Disable lcov for this test.  All the programs running in parallel
> -# race badly on access to profiling data.
> -DISABLE_LCOV=true
> -export DISABLE_LCOV
> -
>  OVS_VSCTL_SETUP
>
>  # Start ovs-vsctls in background.
> diff --git a/tests/uuid.at b/tests/uuid.at
> index 24f7180..2a82fb1 100644
> --- a/tests/uuid.at
> +++ b/tests/uuid.at
> @@ -12,27 +12,7 @@ m4_define([CHECK_UUID],
>       exit 1
>     fi])
>
> -# This test is a strict subset of the larger test down below, but it
> -# completes in a realistic amount of time with the "lcov" wrapper.
> -AT_SETUP([UUID generation])
> -AT_KEYWORDS([UUID])
> -AT_CHECK([test-uuid > uuid])
> -AT_CHECK([
> -  uuid=`cat uuid`
> -  CHECK_UUID])
> -AT_CLEANUP
> -
> -# This test is a strict subset of the larger test down below, but it
> -# completes in a realistic amount of time with the "lcov" wrapper.
> -AT_SETUP([UUID parsing and serialization])
> -AT_KEYWORDS([UUID])
> -AT_CHECK([test-uuid f47ac10b-58cc-4372-a567-0e02b2c3d479], [0],
> -         [f47ac10b-58cc-4372-a567-0e02b2c3d479
> -])
> -AT_CLEANUP
> -
>  AT_SETUP([UUID generation, parsing, serialization])
> -AT_SKIP_IF([test "$CHECK_LCOV" = true]) # lcov makes this test absurdly
> slow
>  AT_KEYWORDS([UUID])
>  AT_CHECK([
>    uuids=
> --
> 1.7.2.5
>
> _______________________________________________
> dev mailing list
> dev@openvswitch.org
> http://openvswitch.org/mailman/listinfo/dev
>
_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to