Hi all.
I recently updated my debian unstable to a new libc6 (problems started
with 2.10.1-6) and I get a bunch of new errors from memcheck. When I
compile the following (and obviously anything else):
int main() {
return 0;
}
and let memcheck run with it, I get a huge amount of this:
...
...
==5329== Use of uninitialised value of size 8
==5329== at 0x4F291D4: ??? (in /lib/libc-2.10.1.so)
==5329== by 0x4F28D41: ??? (in /lib/libc-2.10.1.so)
==5329== by 0x4A1E590: _vgnU_freeres (vg_preloaded.c:62)
==5329== by 0x4E5C39D: ??? (in /lib/libc-2.10.1.so)
==5329== by 0x4E5C444: exit (in /lib/libc-2.10.1.so)
==5329== by 0x4E44A93: (below main) (in /lib/libc-2.10.1.so)
==5329==
==5329== Use of uninitialised value of size 8
==5329== at 0x4F2920D: ??? (in /lib/libc-2.10.1.so)
==5329== by 0x4F28D41: ??? (in /lib/libc-2.10.1.so)
==5329== by 0x4A1E590: _vgnU_freeres (vg_preloaded.c:62)
==5329== by 0x4E5C39D: ??? (in /lib/libc-2.10.1.so)
==5329== by 0x4E5C444: exit (in /lib/libc-2.10.1.so)
==5329== by 0x4E44A93: (below main) (in /lib/libc-2.10.1.so)
==5329==
==5329==
==5329== HEAP SUMMARY:
==5329== in use at exit: 0 bytes in 0 blocks
==5329== total heap usage: 0 allocs, 0 frees, 0 bytes allocated
==5329==
==5329== All heap blocks were freed -- no leaks are possible
==5329==
==5329== For counts of detected and suppressed errors, rerun with: -v
==5329== Use --track-origins=yes to see where uninitialised values come from
==5329== ERROR SUMMARY: 5721 errors from 409 contexts (suppressed: 0 from 0)
I cut the 5721 errors from the output. But they are all of the kind:
"Use of uninitialised value of size x"
or "Conditional jump or move depends on uninitialised value(s)"
And they are all in /lib/ld-2.10.1.so, /lib/libc-2.10.1.so and a feq
occurences of /usr/lib/valgrind/vgpreload_core-amd64-linux.so. One was
even in the program itself.
So I got the svn version of valgrind and it warned me about this:
valgrind: Fatal error at startup: a function redirection
valgrind: which is mandatory for this platform-tool combination
valgrind: cannot be set up. Details of the redirection are:
valgrind:
valgrind: A must-be-redirected function
valgrind: whose name matches the pattern: strlen
valgrind: in an object with soname matching: ld-linux-x86-64.so.2
valgrind: was not found whilst processing
valgrind: symbols from the object with soname: ld-linux-x86-64.so.2
valgrind:
valgrind: Possible fixes: (1, short term): install glibc's debuginfo
valgrind: package on this machine. (2, longer term): ask the packagers
valgrind: for your Linux distribution to please in future ship a non-
valgrind: stripped ld.so (or whatever the dynamic linker .so is called)
valgrind: that exports the above-named function using the standard
valgrind: calling conventions for this platform.
valgrind:
valgrind: Cannot continue -- exiting now. Sorry.
After I installed the libc6-dbg package, everything was fine again and
the old (debian packaged) memcheck worked again. Maybe this helps
someone when it goes into the archives.
Is it possible for you guys to push a newer valgrind version with this
warning to the debian mirrors?
Greetings
Andre Naujoks
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Valgrind-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/valgrind-users