Re: [RFC/PATCH] ignore memcmp() overreading in bsearch() callback
- From
Jeff King <peff@peff.net>
- Date
- Jan 15, 2013, 15:50 UTC
- Message-ID
- <20130115155043.GA21815@sigill.intra.peff.net>
- In-Reply-To
- <7v38y38hhm.fsf@alter.siamese.dyndns.org>
On Mon, Jan 14, 2013 at 03:36:21PM -0800, Junio C Hamano wrote:
Show 5 quoted lines
> It appears that memcmp() uses the usual "one word at a time" > comparison and triggers valgrind in a callback of bsearch() used in > the refname search. I can easily trigger problems in any script > with test_commit (e.g. "sh t0101-at-syntax.sh --valgrind -i -v") > without this suppression.
Out of curiosity, what platform do you see this on? I can't reproduce on glibc.
Show 16 quoted lines
> diff --git a/t/valgrind/default.supp b/t/valgrind/default.supp
> index 0a6724f..032332f 100644
> --- a/t/valgrind/default.supp
> +++ b/t/valgrind/default.supp
> @@ -49,3 +49,11 @@
> Memcheck:Addr4
> fun:copy_ref
> }
> +
> +{
> + ignore-memcmp-reading-too-much-in-bsearch-callback
> + Memcheck:Addr4
> + fun:ref_entry_cmp_sslice
> + fun:bsearch
> + fun:search_ref_dir
> +}Given that it is valgrind-clean on my platform, and reading the code I don't see any problems, I think it probably is a false positive, and this suppression makes sense.
-Peff