valgrind out of sync with ld.so // libc
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
valgrind (Ubuntu) |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
Valgrind reports all sorts of spurious memory access errors deep down ld.so for statically linked C code.
Researching these errors yields the following discussion on the valgrind (users) mailing list, which hints at the likely problem:
http://<email address hidden>
Solution appears to be to rebuild valgrind.
Package versions:
valgrind:
Installed: 1:3.8.1-1ubuntu2
Candidate: 1:3.8.1-1ubuntu2
Version table:
*** 1:3.8.1-1ubuntu2 0
500 http://
100 /var/lib/
libc6:
Installed: 2.16-0ubuntu8
Candidate: 2.16-0ubuntu8
Version table:
*** 2.16-0ubuntu8 0
500 http://
100 /var/lib/
gcc:
Installed: 4:4.7.2-1ubuntu8
Candidate: 4:4.7.2-1ubuntu8
Version table:
*** 4:4.7.2-1ubuntu8 0
500 http://
100 /var/lib/
lsb_release -a output:
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu Raring Ringtail (development branch)
Release: 13.04
Codename: raring
Example test case (test.c), taken from the mailing list:
int main ()
{
return 0;
}
Compile with:
gcc -static test.c
Test with:
valgrind --track-origins=yes -- ./a.out
Yields:
==5135== Memcheck, a memory error detector
==5135== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al.
==5135== Using Valgrind-3.8.1 and LibVEX; rerun with -h for copyright info
==5135== Command: /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x410B26: __linkin_atfork (in /home/prometheu
==5135== by 0x407F23: ptmalloc_
==5135== by 0x4088AD: malloc_hook_ini (in /home/prometheu
==5135== by 0x44F3D1: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created
==5135== at 0x44BA6A: brk (in /home/prometheu
==5135== by 0x40F34B: sbrk (in /home/prometheu
==5135== by 0x4014A3: __libc_setup_tls (in /home/prometheu
==5135== by 0x4011D0: (below main) (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x409D1F: strlen (in /home/prometheu
==5135== by 0x44CCC2: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x44CCC9: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x44CCD3: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Use of uninitialised value of size 8
==5135== at 0x44CCEE: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Use of uninitialised value of size 8
==5135== at 0x44CCFA: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x44CD2C: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x404988: _int_malloc (in /home/prometheu
==5135== by 0x406D5F: malloc (in /home/prometheu
==5135== by 0x44CDDD: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x4049B0: _int_malloc (in /home/prometheu
==5135== by 0x406D5F: malloc (in /home/prometheu
==5135== by 0x44CDDD: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Use of uninitialised value of size 8
==5135== at 0x4049C0: _int_malloc (in /home/prometheu
==5135== by 0x406D5F: malloc (in /home/prometheu
==5135== by 0x44CDDD: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x404A6F: _int_malloc (in /home/prometheu
==5135== by 0x406D5F: malloc (in /home/prometheu
==5135== by 0x44CDDD: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Use of uninitialised value of size 8
==5135== at 0x404A82: _int_malloc (in /home/prometheu
==5135== by 0x406D5F: malloc (in /home/prometheu
==5135== by 0x44CDDD: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x404A89: _int_malloc (in /home/prometheu
==5135== by 0x406D5F: malloc (in /home/prometheu
==5135== by 0x44CDDD: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x404E76: _int_malloc (in /home/prometheu
==5135== by 0x406D5F: malloc (in /home/prometheu
==5135== by 0x44CDDD: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Use of uninitialised value of size 8
==5135== at 0x404E98: _int_malloc (in /home/prometheu
==5135== by 0x406D5F: malloc (in /home/prometheu
==5135== by 0x44CDDD: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x404EA2: _int_malloc (in /home/prometheu
==5135== by 0x406D5F: malloc (in /home/prometheu
==5135== by 0x44CDDD: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x404EA6: _int_malloc (in /home/prometheu
==5135== by 0x406D5F: malloc (in /home/prometheu
==5135== by 0x44CDDD: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x404EB6: _int_malloc (in /home/prometheu
==5135== by 0x406D5F: malloc (in /home/prometheu
==5135== by 0x44CDDD: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Use of uninitialised value of size 8
==5135== at 0x404EBB: _int_malloc (in /home/prometheu
==5135== by 0x406D5F: malloc (in /home/prometheu
==5135== by 0x44CDDD: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x404F28: _int_malloc (in /home/prometheu
==5135== by 0x406D5F: malloc (in /home/prometheu
==5135== by 0x44CDDD: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Use of uninitialised value of size 8
==5135== at 0x4052CB: _int_malloc (in /home/prometheu
==5135== by 0x406D5F: malloc (in /home/prometheu
==5135== by 0x44CDDD: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x406D8A: malloc (in /home/prometheu
==5135== by 0x44CDDD: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x406D93: malloc (in /home/prometheu
==5135== by 0x44CDDD: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x40ACF4: mempcpy (in /home/prometheu
==5135== by 0x44CE09: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x40ACF9: mempcpy (in /home/prometheu
==5135== by 0x44CE09: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x40AD09: mempcpy (in /home/prometheu
==5135== by 0x44CE09: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x40AD1C: mempcpy (in /home/prometheu
==5135== by 0x44CE09: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x40AD2D: mempcpy (in /home/prometheu
==5135== by 0x44CE09: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x40AD46: mempcpy (in /home/prometheu
==5135== by 0x44CE09: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Conditional jump or move depends on uninitialised value(s)
==5135== at 0x44CE1C: fillin_rpath (in /home/prometheu
==5135== by 0x44F64C: _dl_init_paths (in /home/prometheu
==5135== by 0x4113B8: _dl_non_
==5135== by 0x411C42: __libc_init_first (in /home/prometheu
==5135== by 0x401219: (below main) (in /home/prometheu
==5135== Uninitialised value was created by a stack allocation
==5135== at 0x44F5BE: _dl_init_paths (in /home/prometheu
==5135==
==5135== Use of uninitialised value of size 8
==5135== at 0x40189F: __run_exit_handlers (in /home/prometheu
==5135== Uninitialised value was created
==5135== at 0x44BA6A: brk (in /home/prometheu
==5135== by 0x40F34B: sbrk (in /home/prometheu
==5135== by 0x4014A3: __libc_setup_tls (in /home/prometheu
==5135== by 0x4011D0: (below main) (in /home/prometheu
==5135==
==5135==
==5135== HEAP SUMMARY:
==5135== in use at exit: 0 bytes in 0 blocks
==5135== total heap usage: 0 allocs, 0 frees, 0 bytes allocated
==5135==
==5135== All heap blocks were freed -- no leaks are possible
==5135==
==5135== For counts of detected and suppressed errors, rerun with: -v
==5135== ERROR SUMMARY: 39 errors from 31 contexts (suppressed: 0 from 0)
ProblemType: Bug
DistroRelease: Ubuntu 13.04
Package: valgrind 1:3.8.1-1ubuntu2
ProcVersionSign
Uname: Linux 3.7.0-7-generic x86_64
ApportVersion: 2.7-0ubuntu2
Architecture: amd64
Date: Sun Dec 30 02:10:02 2012
InstallationDate: Installed on 2012-09-02 (118 days ago)
InstallationMedia: Kubuntu 12.10 "Quantal Quetzal" - Alpha amd64 (20120902)
MarkForUpload: True
SourcePackage: valgrind
UpgradeStatus: No upgrade log present (probably fresh install)
rebuilding valgrind does *not* fix the issue for me