[Jackit-devel] [linux-audio-dev] What valgrind says

Jack O'Quin jack.oquin at gmail.com
Tue Jun 27 02:07:19 UTC 2006


On 6/26/06, james at dis-dot-dat.net <james at dis-dot-dat.net> wrote:
> On Mon, 26 Jun, 2006 at 10:16AM -0500, Jack O'Quin spake thus:
> > libjack seems OK already, but there was an unitialied char
> > written by jackd.  I fixed that and committed it as [0.102.18].
> >
> > I don't have valgrind set up correctly on my new laptop.  Could
> > one of you please update to the latest SVN version and verify
> > whether this fixes that warning message?
>
> OK, since I brought it up I thought I'd better test it out.  Sorry,
> but I still get the same problem.
>
> Compiling from the raw SVN-delivered source instead of emerging it
> might have given a bit of a hint, though.  Valgrind is now able to
> give the location inside jack that the error occurs: client.c, line
> 240
>
> I've attached a log from valgrind (includes my own debugging output,
> easily ignored).

OK, I see it now.  All those uninitialized write complaints are due to
the fact that jack_request_t is a union.  Most requests don't need (or
want) to fill in all the bytes, just the ones that matter for that
RequestType.

There are jack_request_t structs used all over the place.  The only
solution I can think of that would make valgrind happy would be to
initialize them all to zeroes before filling them in.  While that would
eliminate these complaints, I have some doubts that we really want
to make all those changes.  There is some risk of introducing real
bugs while fixing them.

Those valgrind warnings really *are* annoying, of course.
-- 
 joq



More information about the Linux-audio-dev mailing list