[PATCH] valgrind: do not require valgrind 3.4.0 or newer

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Valgrind 3.4.0 is pretty new, and even if --track-origins is a nice
feature, it is not the end of the world if that is not available.  So
play nice and use that option only when only an older version of
valgrind is available.

In the same spirit, refrain from the use of '...' in suppression
files, which is also a feature only valgrind 3.4 and newer understand.

Signed-off-by: Johannes Schindelin <johannes.schindelin@xxxxxx>
---

	This patch is on top of my valgrind series.

	In related news, Mark Adler has prepared a patch for the zlib vs 
	valgrind issue which has a low impact on performance, yet keeps 
	valgrind happy.

	I fully expect this patch to hit the next zlib version.

	Note that with the current suppressions, there was only a 
	hard-to-fix issue with certain gcc compilers in conjunction with 
	-DUNALIGNED_OK -O3 flags when compiling zlib, so not many users 
	are affected anyway (ahem, except for all the Ubuntu users, ahem).

 t/valgrind/default.supp |    4 +++-
 t/valgrind/valgrind.sh  |    8 +++++++-
 2 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/t/valgrind/default.supp b/t/valgrind/default.supp
index 5f341b8..9e013fa 100644
--- a/t/valgrind/default.supp
+++ b/t/valgrind/default.supp
@@ -38,6 +38,8 @@
 	writing-data-from-zlib-triggers-even-more-errors
 	Memcheck:Param
 	write(buf)
-	...
+	obj:/lib/ld-*.so
+	fun:write_in_full
+	fun:write_buffer
 	fun:write_loose_object
 }
diff --git a/t/valgrind/valgrind.sh b/t/valgrind/valgrind.sh
index dc92612..a77023a 100755
--- a/t/valgrind/valgrind.sh
+++ b/t/valgrind/valgrind.sh
@@ -2,11 +2,17 @@
 
 base=$(basename "$0")
 
+TRACK_ORIGINS=
+case "$(valgrind --version)" in
+valgrind-{3.[4-9],3.[1-3][0-9],[4-9],[1-3][0-9]}*)
+	TRACK_ORIGINS=--track-origins=yes
+esac
+
 exec valgrind -q --error-exitcode=126 \
 	--leak-check=no \
 	--suppressions="$GIT_VALGRIND/default.supp" \
 	--gen-suppressions=all \
-	--track-origins=yes \
+	$TRACK_ORIGINS \
 	--log-fd=4 \
 	--input-fd=4 \
 	$GIT_VALGRIND_OPTIONS \
-- 
1.6.1.1.598.g140d5
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux