Re: Valgrind updates
- From
Jeff King <peff@peff.net>
- Date
- Jan 27, 2009, 04:48 UTC
- Message-ID
- <20090127044838.GA735@coredump.intra.peff.net>
- In-Reply-To
- <alpine.LFD.2.00.0901261934450.3123@localhost.localdomain>
On Mon, Jan 26, 2009 at 07:38:56PM -0800, Linus Torvalds wrote:
Show 15 quoted lines
> > ==valgrind== Syscall param write(buf) points to uninitialised byte(s) > > ==valgrind== at 0x5609E40: __write_nocancel (in /lib/libpthread-2.6.1.so) > > ==valgrind== by 0x4D0380: xwrite (wrapper.c:129) > > ==valgrind== by 0x4D046E: write_in_full (wrapper.c:159) > > ==valgrind== by 0x4C0697: write_buffer (sha1_file.c:2275) > > ==valgrind== by 0x4C0B1C: write_loose_object (sha1_file.c:2387) > > Looks entirely bogus. > > I suspect that valgrind for some reason doesn't see the writes made by > zlib as being initialization, possibly due to some incorrect valgrind > annotations on deflate(). We've just totally initialized that whole > buffer with deflate(). > > It definitely does not look like a git bug, but a valgrind run issue.
Yes, this is exactly the issue I ran into when doing the valgrind stuff a few months ago. I spent several hours looking carefully at the code and came to the same conclusion. Anything zlib touches needs to be manually suppressed for uninitialized writes (which I _thought_ was covered in the suppressions I sent out originally, but maybe they need to be tweaked for Dscho's system).
-Peff