[Bug 1556765] Comment bridged from LTC Bugzilla

bugproxy bugproxy at us.ibm.com
Wed Apr 20 13:11:50 UTC 2016


------- Comment From arnez at de.ibm.com 2016-04-20 09:02 EDT-------
The issue reported in this bug is that Valgrind always diagnoses an invalid read below the stack pointer, even for a program that basically does nothing (like /bin/true).  That read operation is actually performed by Valgrind itself at initialization time.  This is a real bug in the Valgrind binary, but it is caused by a miscompile due to a GCC bug.  That bug must be fixed first, and Valgrind must then be rebuilt in order for this bug to be fixed.

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to valgrind in Ubuntu.
https://bugs.launchpad.net/bugs/1556765

Title:
  Valgrind command valgrind /bin/true shows error

Status in Valgrind:
  New
Status in valgrind package in Ubuntu:
  Fix Released

Bug description:
  Problem Description
  =============================
  Linux s83lp18 4.4.0-8-generic #23-Ubuntu SMP Wed Feb 24 20:46:00 UTC 2016 s390x s390x s390x GNU/Linux
  root at s83lp18:~#

  testing valgrind &sbin/true
  see the following output
  oot at s83lp18:~# valgrind -v /bin/true
  ==17675== Memcheck, a memory error detector
  ==17675== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al.
  ==17675== Using Valgrind-3.11.0 and LibVEX; rerun with -h for copyright info
  ==17675== Command: /bin/true
  ==17675==
  --17675-- Valgrind options:
  --17675--    -v
  --17675-- Contents of /proc/version:
  --17675--   Linux version 4.4.0-8-generic (buildd at z13-012) (gcc version 5.3.1 20160222 (Ubuntu 5.3.1-9ubuntu3) ) #23-Ubuntu SMP Wed Feb 24 20:46:00 UTC 2016
  --17675--
  --17675-- Arch and hwcaps: S390X, BigEndian, s390x-ldisp-eimm-gie-dfp-fgx-stfle-etf2-etf3-stckf-fpext-lsc-pfpo
  --17675-- Page sizes: currently 4096, max supported 4096
  --17675-- Valgrind library directory: /usr/lib/valgrind
  --17675-- Reading syms from /bin/true
  --17675--    object doesn't have a symbol table
  --17675-- Reading syms from /lib/s390x-linux-gnu/ld-2.21.so
  --17675--   Considering /lib/s390x-linux-gnu/ld-2.21.so ..
  --17675--   .. CRC mismatch (computed 99d02d14 wanted 6c51b780)
  --17675--   Considering /usr/lib/debug/lib/s390x-linux-gnu/ld-2.21.so ..
  --17675--   .. CRC is valid
  --17675-- Reading syms from /usr/lib/valgrind/memcheck-s390x-linux
  --17675--   Considering /usr/lib/valgrind/memcheck-s390x-linux ..
  --17675--   .. CRC mismatch (computed 3155372b wanted dc3e5eba)
  --17675--    object doesn't have a symbol table
  --17675--    object doesn't have a dynamic symbol table
  --17675-- Scheduler: using generic scheduler lock implementation.
  --17675-- Reading suppressions file: /usr/lib/valgrind/default.supp
  ==17675== embedded gdbserver: reading from /tmp/vgdb-pipe-from-vgdb-to-17675-by-root-on-???
  ==17675== embedded gdbserver: writing to   /tmp/vgdb-pipe-to-vgdb-from-17675-by-root-on-???
  ==17675== embedded gdbserver: shared mem   /tmp/vgdb-pipe-shared-mem-vgdb-17675-by-root-on-???
  ==17675==
  ==17675== TO CONTROL THIS PROCESS USING vgdb (which you probably
  ==17675== don't want to do, unless you know exactly what you're doing,
  ==17675== or are doing some strange experiment):
  ==17675==   /usr/lib/valgrind/../../bin/vgdb --pid=17675 ...command...
  ==17675==
  ==17675== TO DEBUG THIS PROCESS USING GDB: start GDB like this
  ==17675==   /path/to/gdb /bin/true
  ==17675== and then give GDB the following command
  ==17675==   target remote | /usr/lib/valgrind/../../bin/vgdb --pid=17675
  ==17675== --pid is optional if only one valgrind process is running
  ==17675==
  --17675-- REDIR: 0x401cbf0 (ld64.so.1:index) redirected to 0x80005cca2 (???)
  --17675-- Reading syms from /usr/lib/valgrind/vgpreload_core-s390x-linux.so
  --17675--   Considering /usr/lib/valgrind/vgpreload_core-s390x-linux.so ..
  --17675--   .. CRC mismatch (computed a1d0e18d wanted dbd7ebd0)
  --17675--    object doesn't have a symbol table
  --17675-- Reading syms from /usr/lib/valgrind/vgpreload_memcheck-s390x-linux.so
  --17675--   Considering /usr/lib/valgrind/vgpreload_memcheck-s390x-linux.so ..
  --17675--   .. CRC mismatch (computed 7d9de5b1 wanted eb7591b6)
  --17675--    object doesn't have a symbol table
  --17675-- Reading syms from /lib/s390x-linux-gnu/libc-2.21.so
  --17675--   Considering /lib/s390x-linux-gnu/libc-2.21.so ..
  --17675--   .. CRC mismatch (computed 231040c9 wanted f909c225)
  --17675--   Considering /usr/lib/debug/lib/s390x-linux-gnu/libc-2.21.so ..
  --17675--   .. CRC is valid
  --17675-- REDIR: 0x48ed788 (libc.so.6:memcpy) redirected to 0x4830760 (_vgnU_ifunc_wrapper)
  ==17675== Invalid read of size 8
  ==17675==    at 0x483670A: ??? (in /usr/lib/valgrind/vgpreload_memcheck-s390x-linux.so)
  ==17675==    by 0x40125A9: call_init.part.0 (dl-init.c:72)
  ==17675==    by 0x401279B: call_init (dl-init.c:104)
  ==17675==    by 0x401279B: _dl_init (dl-init.c:87)
  ==17675==    by 0x400106B: ??? (in /lib/s390x-linux-gnu/ld-2.21.so)
  ==17675==  Address 0xfff0003a0 is on thread 1's stack
  ==17675==  56 bytes below stack pointer
  ==17675==
  --17675-- REDIR: 0x48e2ed8 (libc.so.6:rindex) redirected to 0x4839d08 (rindex)
  --17675-- REDIR: 0x48de1c0 (libc.so.6:free) redirected to 0x4837ee0 (free)
  ==17675==
  ==17675== HEAP SUMMARY:
  ==17675==     in use at exit: 0 bytes in 0 blocks
  ==17675==   total heap usage: 0 allocs, 0 frees, 0 bytes allocated
  ==17675==
  ==17675== All heap blocks were freed -- no leaks are possible
  ==17675==
  ==17675== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
  ==17675==
  ==17675== 1 errors in context 1 of 1:
  ==17675== Invalid read of size 8
  ==17675==    at 0x483670A: ??? (in /usr/lib/valgrind/vgpreload_memcheck-s390x-linux.so)
  ==17675==    by 0x40125A9: call_init.part.0 (dl-init.c:72)
  ==17675==    by 0x401279B: call_init (dl-init.c:104)
  ==17675==    by 0x401279B: _dl_init (dl-init.c:87)
  ==17675==    by 0x400106B: ??? (in /lib/s390x-linux-gnu/ld-2.21.so)
  ==17675==  Address 0xfff0003a0 is on thread 1's stack
  ==17675==  56 bytes below stack pointer

To manage notifications about this bug go to:
https://bugs.launchpad.net/valgrind/+bug/1556765/+subscriptions



More information about the foundations-bugs mailing list