GNOME Bugzilla – Bug 747612
Valgrind 3.7.0 chokes on match-leak-kinds in gst.supp
Last modified: 2015-09-29 12:00:39 UTC
+{ + closures aren't valgrind friendly (bgo#739850) + Memcheck:Leak + match-leak-kinds: possible + fun:calloc + ... + fun:g_cclosure_new +} The "match-leak-kinds: possible" causes valgrind 3.7.0 to error out (amusingly for debugging, on a line number in the set two positions before the one with the match-leak-kinds. This feature was added in 3.9.0: http://valgrind.10908.n7.nabble.com/Valgrind-3-9-0-is-available-td47723.html I half expect this will be deemed wontfix, and that is fine if it is.
I'm thinking one could make this a configure generated file, with this match-leak-kinds being parameterized and replaced with "" if unsupported.
No, please, let's not make this configure-generated :) Is this "match-leak-kinds: possible" line really needed in the first place?
Well, I guess the supressions are pretty encompassing: { closures aren't valgrind friendly (bgo#739850) Memcheck:Leak match-leak-kinds: possible fun:calloc ... fun:g_closure_new_simple } So removing it might hide other actual leaks. I'm running with 3.10.1 and these removed now, I've hit an unrelated leak in core, which I will fix, then report whether I saw anything from closures when done.
Well, seeing that we are extremely unlikely to use this API directly, this is ultimately GLib stuff then. If we catch memory leaks in GLib, great, but we are more interested in stuff in GStreamer so I don't think it's a problem to simply ignore some known leaks in GLib here.
Created attachment 301997 [details] [review] make suppressions compatible with valgrindd 3.7.0 If we don't, then here's a patch to remove the lines. And it turns out the leak in the tests was already fixed by you yesterday (push_buffer_async) :)
ommit 6babecd339cce45223ddb8312400811ba956a16d Author: Vincent Penquerc'h <vincent.penquerch@collabora.co.uk> Date: Mon Apr 20 14:54:59 2015 +0100 gst.supp: make suppressions compatible with valgrind 3.7.0 "match-leak-kinds: possible" is a recent valgrind addition, and valgrind 3.7.0 errors out on it. https://bugzilla.gnome.org/show_bug.cgi?id=747612