Your message dated Wed, 18 Jul 2018 22:06:41 +0000 with message-id <[email protected]> and subject line Bug#903389: fixed in valgrind 1:3.13.0-2.1 has caused the Debian Bug report #903389, regarding valgrind: can't understand libc6 symbols: ELF section outside all mapped regions to be marked as done.
This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact [email protected] immediately.) -- 903389: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=903389 Debian Bug Tracking System Contact [email protected] with problems
--- Begin Message ---Package: valgrind Version: 1:3.13.0-2+b1 Severity: grave Justification: doesn't appear to be usable valgrind in unstable doesn't seem to be able to load the symbol table for libc6 correctly, resulting in it not instrumenting malloc() (false negative) and not applying its own default suppressions to libc6 (false positives). I think this is RC, but please downgrade the severity if you disagree. As a baseline, if I run `valgrind ls` in a stretch chroot, I get: > ==22578== Using Valgrind-3.12.0.SVN and LibVEX; rerun with -h for copyright > info ... > --22578-- Reading syms from /lib/x86_64-linux-gnu/ld-2.24.so > --22578-- Considering > /usr/lib/debug/.build-id/26/3f909dbe11a66f7c6233e3ff0521148d9f8370.debug .. > --22578-- .. build-id is valid ... > --22578-- REDIR: 0x401af80 (ld-linux-x86-64.so.2:strlen) redirected to > 0x3809de81 (vgPlain_amd64_linux_REDIR_FOR_strlen) > --22578-- REDIR: 0x4019830 (ld-linux-x86-64.so.2:index) redirected to > 0x3809de9b (vgPlain_amd64_linux_REDIR_FOR_index) ... > --22578-- REDIR: 0x50daf10 (libc.so.6:malloc) redirected to 0x4c2bb40 (malloc) ... > ==22578== total heap usage: 23 allocs, 9 frees, 56,446 bytes allocated That makes sense to me: valgrind has injected its instrumented strlen(), index(), malloc(), etc., and was able to monitor memory allocation and leaks. Doing the same thing on unstable, I get: > ==22631== Using Valgrind-3.13.0 and LibVEX; rerun with -h for copyright info ... > --22631-- Reading syms from /bin/ls > --22631-- object doesn't have a symbol table > --22631-- Reading syms from /lib/x86_64-linux-gnu/ld-2.27.so > --22631-- ELF section outside all mapped regions > --22631-- Reading syms from /usr/lib/valgrind/memcheck-amd64-linux > --22631-- Considering /usr/lib/valgrind/memcheck-amd64-linux .. > --22631-- .. CRC mismatch (computed 98de4825 wanted 55353537) > --22631-- Considering /usr/lib/debug/usr/lib/valgrind/memcheck-amd64-linux > .. > --22631-- .. CRC is valid > --22631-- object doesn't have a dynamic symbol table ... > --22631-- Reading syms from /lib/x86_64-linux-gnu/libselinux.so.1 > --22631-- object doesn't have a symbol table > --22631-- Reading syms from /lib/x86_64-linux-gnu/libc-2.27.so > --22631-- ELF section outside all mapped regions > --22631-- Reading syms from /lib/x86_64-linux-gnu/libpcre.so.3.13.3 > --22631-- Considering /lib/x86_64-linux-gnu/libpcre.so.3.13.3 .. > --22631-- .. CRC mismatch (computed 0f3a11e2 wanted b2e3bba6) > --22631-- object doesn't have a symbol table > --22631-- Reading syms from /lib/x86_64-linux-gnu/libdl-2.27.so > --22631-- ELF section outside all mapped regions > --22631-- Reading syms from /lib/x86_64-linux-gnu/libpthread-2.27.so > --22631-- ELF section outside all mapped regions > ==22631== Use of uninitialised value of size 8 > ==22631== at 0x4FF24AA: ??? (in /lib/x86_64-linux-gnu/libc-2.27.so) > ==22631== by 0x4F1FAF5: ??? (in /lib/x86_64-linux-gnu/libc-2.27.so) > ==22631== > ==22631== Conditional jump or move depends on uninitialised value(s) > ==22631== at 0x4FEE987: ??? (in /lib/x86_64-linux-gnu/libc-2.27.so) > ==22631== by 0x4F1FE53: ??? (in /lib/x86_64-linux-gnu/libc-2.27.so) > ==22631== by 0x77: ??? > ==22631== by 0x6: ??? > ==22631== by 0x2: ??? > ==22631== by 0x402A49B: ??? > ==22631== > ==22631== Conditional jump or move depends on uninitialised value(s) > ==22631== at 0x4F1FE57: ??? (in /lib/x86_64-linux-gnu/libc-2.27.so) > ==22631== by 0x77: ??? > ==22631== by 0x6: ??? > ==22631== by 0x2: ??? > ==22631== by 0x402A49B: ??? [many more uses of unitialized values elided] ... > ==22631== HEAP SUMMARY: > ==22631== in use at exit: 0 bytes in 0 blocks > ==22631== total heap usage: 0 allocs, 0 frees, 0 bytes allocated I think those uses of uninitialized values were meant to be suppressed by /usr/lib/valgrind/default.supp, but were not suppressed because valgrind couldn't recognise which symbols were involved? And valgrind didn't observe any memory allocation or deallocation. I get similar results when using valgrind to run newly-compiled binaries, including this stupid test program: I don't see the uninitialized symbols for this one, presumably because it's too trivial, but I also don't see the 1024-byte leak being diagnosed. ----8<---- #include <stdio.h> int main (void) { malloc(1024); return puts("hello"); } ----8<---- Regards, smcv -- System Information: Debian Release: buster/sid APT prefers unstable-debug APT policy: (500, 'unstable-debug'), (500, 'buildd-unstable'), (500, 'unstable'), (500, 'testing'), (500, 'stable'), (1, 'experimental-debug'), (1, 'buildd-experimental'), (1, 'experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.17.0-1-amd64 (SMP w/4 CPU cores) Locale: LANG=en_GB.utf8, LC_CTYPE=en_GB.utf8 (charmap=UTF-8), LANGUAGE=en_GB:en (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages valgrind depends on: ii libc6 2.27-4 ii libc6-dbg 2.27-4 Versions of packages valgrind recommends: ii gdb 7.12-6+b2 ii valgrind-dbg 1:3.13.0-2+b1 Versions of packages valgrind suggests: pn alleyoop <none> pn kcachegrind <none> pn valgrind-mpi <none> pn valkyrie <none> -- no debconf information
--- End Message ---
--- Begin Message ---Source: valgrind Source-Version: 1:3.13.0-2.1 We believe that the bug you reported is fixed in the latest version of valgrind, which is due to be installed in the Debian FTP archive. A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to [email protected], and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Ansgar Burchardt <[email protected]> (supplier of updated valgrind package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing [email protected]) -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Format: 1.8 Date: Wed, 18 Jul 2018 23:21:57 +0200 Source: valgrind Binary: valgrind valgrind-dbg valgrind-mpi Architecture: source Version: 1:3.13.0-2.1 Distribution: unstable Urgency: high Maintainer: Alessandro Ghedini <[email protected]> Changed-By: Ansgar Burchardt <[email protected]> Description: valgrind - instrumentation framework for building dynamic analysis tools valgrind-dbg - instrumentation framework for building dynamic analysis tools (de valgrind-mpi - instrumentation framework for building dynamic analysis tools (MP Closes: 903389 Changes: valgrind (1:3.13.0-2.1) unstable; urgency=high . * Non-maintainer upload. * backport: Accept read-only PT_LOAD segments and .rodata (Closes: #903389) + new patch: 12_Accept-read-only-PT_LOAD-segments-and-.rodata.patch Checksums-Sha1: e874c9d07204ddbcc4390e1511bece09400bf4e0 2448 valgrind_3.13.0-2.1.dsc d66a839b9ec5432e20fe9b7647f252a5916cf802 28300 valgrind_3.13.0-2.1.debian.tar.xz Checksums-Sha256: ce9f54d5d12b377c1a8554369c4366a94bc2a9a819ac2283d02f035a47c3ad45 2448 valgrind_3.13.0-2.1.dsc d353075b6faa7054451f21c294da1c156defff8137a14d27e0b8e7aaf5169f7c 28300 valgrind_3.13.0-2.1.debian.tar.xz Files: f7dd84aa5a73039f7cac4c8d4eb1b7f1 2448 devel optional valgrind_3.13.0-2.1.dsc 6e8b66ce0e7298f0579a840cc24f4ad3 28300 devel optional valgrind_3.13.0-2.1.debian.tar.xz -----BEGIN PGP SIGNATURE----- iQJGBAEBCgAwFiEE6XYjQ9o8g2p4zSVKamMCj1p06JMFAltPuFESHGFuc2dhckBk ZWJpYW4ub3JnAAoJEGpjAo9adOiTAuEP/j211d17lbrbg+98dEsec1ruuWc8++Wv 1HxOwwLBGFySrdb5QZe1GTQqO+deFiQ72d1lt+VygUpetka8kX8OTCzIqknQjRbu VinRah2J/edrwT/mLSzyoQpxa3NbKUNtkZQ9POIlJf53lqYvKQYWNGCg2X6lHQX/ 7KaUZV4EEOXbk8aJnImwad4Zi5Fzra5c4ZuXTGk4GAXjKs1zF/SXWbR2Ce8xZkUQ EF+3Cyaskr4GM0CURp9qCOQL4R7C9chrU1AyaXZm02Ttf3B8hLSh++4j9EztmCPr QASTWvLXWGwBx9ML/1q1zk4Z8gyA/6ei6gCgoDKPZ/w/ZuzVVIvcKg2uWMi0PfLj Xn3qdcOUsVW5u74RotcU+pPSGDbJ5l6NUkQgi8IGadBCzC/AwOrtgeU55R8Q/YPX TDBMDAAkgaEE817yE7er8Poi/Ryj26HkLv1X69u0861cfoHRb581liMVJ1DyywHw WdQ3fi90HUzUb6deoUXn/1Kc3rWJJrhA5J+eax0wUZS1YNKFiJX0RkSuKo3xgfOj xG/wA/7EWp7FWtdAMy6TWH5eMYACLZ7wnD11DocBb+hLxvTvz8cMOFKSQJQi0/o3 /91bGGwExt5YCyoJwNAVloTAaGHmcnuNRGGuXH5c7h5Qp0+gwKnU3+2PTZHVP/jg jxCFYOSs6gYa =nrQt -----END PGP SIGNATURE-----
--- End Message ---

