On Sun, Oct 06, 2013 at 11:33:17AM -0700, Octavio Alvarez wrote:
As the discussion has evolved and I have learned more, my point is now
pretty much the same: a bug on eglibc. I was testing an app with
"valgrind timeout ./app" so problems that did not belong to my app
started appearing on the valgrind report. Fortunately I just did
"timeout valgrind ./app" instead.
However, this misstep revealed a leak in timer_create() from eglibc,
which I wanted to debug. This leak is most probably even affecting
your machine.
It seems to be a false positive related to a pad value that's fairly
well known. (Google "valgrind timer_create")
It's this simple: instead of "apt-get install coreutils-dbg" I have to
recompile coreutils (which may imply installing other packages). Oh,
wait, because it is not guaranteed to work in the exact same way (lack
of Debian patches). To guarantee it use the Debian package, so now I
have to hack it to not strip the symbols. It may be easy, but I don't
know how yet. Another thing to learn as I go.
You seem to be creating overcomplicated possibilities. If we
were to create a -dbg package, here's what would be different:
Syscall param timer_create(evp) points to uninitialised byte(s)
at 0x4E36E1A: timer_create@@GLIBC_2.3.3 (timer_create.c:83)
by 0x402607: settimeout (timeout.c:144)
by 0x4022C5: main (timeout.c:468)
Address 0x7ff0006b0 is on thread 1's stack
instead of:
Syscall param timer_create(evp) points to uninitialised byte(s)
at 0x4E36E1A: timer_create@@GLIBC_2.3.3 (timer_create.c:83)
by 0x402607: ??? (in /usr/bin/timeout)
by 0x4022C5: ??? (in /usr/bin/timeout)
by 0x5278994: (below main) (libc-start.c:260)
Address 0x7ff0006b0 is on thread 1's stack
Does that make it any less necessary to look at the coreutils source?
FWIW, if you build from the debian package, you could run the relevant
program out of the build directory, where it is not stripped. No need to
"hack it" to strip the symbols; alternatively, you can build with the
nostrip build option if you want to create a .deb. But, as pointed out
above, this isn't really going to tell you anything that a quick grep
would not--timer_create is only called once in the timeout program..
Each step that I have to learn as I go has a set of variables, and
each variable makes the problem more complex until I the time and work
needed is greater than my interest. I was initially willing to debug
and attempt a fix but now I'm not sure anymore.
See above. Now that you have the additional information that would be
present in the -dbg package, does it help?
Mike Stone
--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org