Skip to content

Commit

Permalink
tests --valgrind: provide a mode without --track-origins
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
Thomas Rast authored and Junio C Hamano committed Apr 1, 2013
1 parent 952af35 commit 95d9d5e
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 0 deletions.
5 changes: 5 additions & 0 deletions t/README
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
2 changes: 2 additions & 0 deletions t/valgrind/valgrind.sh
Original file line number Diff line number Diff line change
Expand Up @@ -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]*\)')
Expand Down

0 comments on commit 95d9d5e

Please sign in to comment.