tests --valgrind: provide a mode without --track-origins
authorThomas Rast <trast@inf.ethz.ch>
Sun, 31 Mar 2013 08:00:17 +0000 (10:00 +0200)
committerJunio C Hamano <gitster@pobox.com>
Mon, 1 Apr 2013 14:45:41 +0000 (07:45 -0700)
With --valgrind=memcheck-fast, the tests run under memcheck but
without the autodetected --track-origins. If you just run valgrind to
see *if* there is any memory issue with your program, the extra
information is not needed, and it comes at a roughly 30% hit in
runtime.

While it is possible to achieve the same through GIT_VALGRIND_OPTIONS,
this should be more discoverable and hopefully encourage more users to
run their tests with valgrind.

Signed-off-by: Thomas Rast <trast@inf.ethz.ch>
Acked-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/README
t/valgrind/valgrind.sh
index f5ee40f9c1247934794ee2f56e8242d454b484ee..9b41fe7a9f55b3803aa52cd26c9f0af4e34830ee 100644 (file)
--- a/t/README
+++ b/t/README
@@ -106,6 +106,11 @@ appropriately before running "make".
        'drd', but you may use any tool recognized by your valgrind
        installation.
 
+       As a special case, <tool> can be 'memcheck-fast', which uses
+       memcheck but disables --track-origins.  Use this if you are
+       running tests in bulk, to see if there are _any_ memory
+       issues.
+
        Note that memcheck is run with the option --leak-check=no,
        as the git process is short-lived and some errors are not
        interesting. In order to run a single command under the same
index 472ac2deedc7120da8d7771517c9ca43a46c2cb6..6b87c91b60cde4b19d6644227548f1ba6b226545 100755 (executable)
@@ -5,6 +5,8 @@ base=$(basename "$0")
 TOOL_OPTIONS='--leak-check=no'
 
 case "$GIT_VALGRIND_MODE" in
+memcheck-fast)
+       ;;
 memcheck)
        VALGRIND_VERSION=$(valgrind --version)
        VALGRIND_MAJOR=$(expr "$VALGRIND_VERSION" : '[^0-9]*\([0-9]*\)')