SUMMARY *** NOTE: If you are reporting a crash, please try to attach a backtrace with debug symbols. See https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports *** STEPS TO REPRODUCE 1. Build Valgrind from source on target (armv7 gcc-10.3.0 libc6-dbg_2.33-r0) 2. Run valgrind ls OBSERVED RESULT valgrind: m_debuginfo/readelf.c:717 (get_elf_symbol_info): Assertion 'in_rx' failed. EXPECTED RESULT Valgrind does not fail in this manner SOFTWARE/OS VERSIONS Linux yocto build uname -a = Linux rct 5.10.106-rct+ #1 Thu Mar 17 17:30:08 UTC 2022 armv7l armv7l armv7l GNU/Linux ADDITIONAL INFORMATION rct@rct:~$ valgrind ls ==8979== Memcheck, a memory error detector ==8979== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==8979== Using Valgrind-3.18.1 and LibVEX; rerun with -h for copyright info ==8979== Command: ls ==8979== valgrind: m_debuginfo/readelf.c:717 (get_elf_symbol_info): Assertion 'in_rx' failed. host stacktrace: ==8979== at 0x58045928: show_sched_status_wrk (m_libcassert.c:406) ==8979== by 0x58045ADB: report_and_quit (m_libcassert.c:477) ==8979== by 0x58045BF3: vgPlain_assert_fail (m_libcassert.c:543) ==8979== by 0x580841A7: get_elf_symbol_info (readelf.c:717) ==8979== by 0x580841A7: read_elf_symtab__normal.isra.0 (readelf.c:841) ==8979== by 0x58088D2F: vgModuleLocal_read_elf_debug_info (readelf.c:3439) ==8979== by 0x5807B9C7: di_notify_ACHIEVE_ACCEPT_STATE (debuginfo.c:969) ==8979== by 0x5807B9C7: vgPlain_di_notify_mmap (debuginfo.c:1326) ==8979== by 0x580B6B2F: vgModuleLocal_generic_PRE_sys_mmap (syswrap-generic.c:2466) ==8979== by 0x580C5523: vgSysWrap_arm_linux_sys_mmap2_before (syswrap-arm-linux.c:243) ==8979== by 0x580B2107: vgPlain_client_syscall (syswrap-main.c:2234) ==8979== by 0x580AC893: handle_syscall (scheduler.c:1211) ==8979== by 0x580AF60B: vgPlain_scheduler (scheduler.c:1529) ==8979== by 0x58103F87: thread_wrapper (syswrap-linux.c:101) ==8979== by 0x58103F87: run_a_thread_NORETURN (syswrap-linux.c:154) ==8979== by 0xFFFFFFFF: ??? sched status: running_tid=1 Thread 1: status = VgTs_Runnable syscall 192 (lwpid 8979) ==8979== at 0x4101E014: __mmap (mmap.c:42) ==8979== by 0x4101E014: mmap (mmap.c:34) ==8979== by 0x41008353: _dl_map_segments (dl-map-segments.h:94) ==8979== by 0x41008353: _dl_map_object_from_fd (dl-load.c:1258) ==8979== by 0x4100966F: _dl_map_object (dl-load.c:2321) ==8979== by 0x4100EEC7: openaux (dl-deps.c:64) ==8979== by 0x4101A7F7: _dl_catch_exception (dl-error-skeleton.c:208) ==8979== by 0x4100F1AB: _dl_map_object_deps (dl-deps.c:254) ==8979== by 0x41003A57: dl_main (rtld.c:1953) ==8979== by 0x410194FF: _dl_sysdep_start (dl-sysdep.c:250) ==8979== by 0x410017FF: _dl_start_final (rtld.c:489) ==8979== by 0x410017FF: _dl_start (rtld.c:582) ==8979== by 0x41000A0F: ??? (in /lib/ld-2.33.so) client stack range: [0xBDA58000 0xBDA59FFF] client SP: 0xBDA58ED4 valgrind stack range: [0x620DF000 0x621DEFFF] top usage: 25260 of 1048576
Do you see any error messages if you crank up the debug level (-d -d -d for instance)?
Just grabbed a quick dump as I have other things to deal with right now and don't really know what I am looking at w.r.t the debug output: Thanks for getting back to me! --2019:1:debuglog DebugLog system started by Stage 1, level 3 logging requested --2019:1:launcher no tool requested, defaulting to 'memcheck' --2019:2:launcher selecting platform for 'ls' --2019:2:launcher selecting platform for '/bin/ls' --2019:2:launcher opened '/bin/ls' --2019:2:launcher read 4096 bytes from '/bin/ls' --2019:2:launcher selected platform 'arm-linux' --2019:1:launcher selected platform 'arm-linux' --2019:1:launcher launching /usr/local/libexec/valgrind/memcheck-arm-linux --2019:1:debuglog DebugLog system started by Stage 2 (main), level 3 logging requested --2019:1: main Welcome to Valgrind version 3.18.1 debug logging --2019:1: main Checking current stack is plausible --2019:1: main Checking initial stack was noted --2019:1: main Starting the address space manager --2019:2: aspacem sp_at_startup = 0x00bed4acd0 (supplied) --2019:2: aspacem minAddr = 0x0004000000 (computed) --2019:2: aspacem maxAddr = 0x00bed49fff (computed) --2019:2: aspacem cStart = 0x0004000000 (computed) --2019:2: aspacem vStart = 0x00616a5000 (computed) --2019:2: aspacem suggested_clstack_end = 0x00bdd4afff (computed) --2019:2: aspacem <<< SHOW_SEGMENTS: Initial layout (5 segments) --2019:2: aspacem 0 segment names in 0 slots --2019:2: aspacem freelist is empty --2019:2: aspacem 0: RSVN 0000000000-0003ffffff 64m ----- SmFixed --2019:2: aspacem 1: 0004000000-00616a4fff 1494m --2019:2: aspacem 2: RSVN 00616a5000-00616a5fff 4096 ----- SmFixed --2019:2: aspacem 3: 00616a6000-00bed49fff 1494m --2019:2: aspacem 4: RSVN 00bed4a000-00ffffffff 1042m ----- SmFixed --2019:2: aspacem >>> --2019:2: aspacem Reading /proc/self/maps --2019:2: aspacem <<< SHOW_SEGMENTS: With contents of /proc/self/maps (15 segments) --2019:2: aspacem 1 segment names in 1 slots --2019:2: aspacem freelist is empty --2019:2: aspacem (0,4,3) /usr/local/libexec/valgrind/memcheck-arm-linux --2019:2: aspacem 0: RSVN 0000000000-0003ffffff 64m ----- SmFixed --2019:2: aspacem 1: 0004000000-0057ffffff 1344m --2019:2: aspacem 2: FILE 0058000000-005824cfff 2412544 r-x-- d=0xb302 i=271399 o=0 (0,4) --2019:2: aspacem 3: 005824d000-005825cfff 65536 --2019:2: aspacem 4: FILE 005825d000-005825ffff 12288 rw--- d=0xb302 i=271399 o=2412544 (0,4) --2019:2: aspacem 5: ANON 0058260000-0058bccfff 9883648 rw--- --2019:2: aspacem 6: 0058bcd000-00616a4fff 138m --2019:2: aspacem 7: RSVN 00616a5000-00616a5fff 4096 ----- SmFixed --2019:2: aspacem 8: 00616a6000-00bed29fff 1494m --2019:2: aspacem 9: ANON 00bed2a000-00bed4afff 135168 rw--- --2019:2: aspacem 10: RSVN 00bed4b000-00bee17fff 839680 ----- SmFixed --2019:2: aspacem 11: ANON 00bee18000-00bee18fff 4096 r-x-- --2019:2: aspacem 12: RSVN 00bee19000-00fffeffff 1041m ----- SmFixed --2019:2: aspacem 13: anon 00ffff0000-00ffff0fff 4096 r-x-- --2019:2: aspacem 14: RSVN 00ffff1000-00ffffffff 61440 ----- SmFixed --2019:2: aspacem >>> --2019:1: main Address space manager is running --2019:1: main Starting the dynamic memory manager --2019:1:mallocfr newSuperblock at 0x616A6000 (pszB 4194288) owner VALGRIND/core --2019:1:mallocfr deferred_reclaimSuperblock at 0x616A6000 (pszB 4194288) (prev 0x0) owner VALGRIND/core --2019:1: main Dynamic memory manager is running --2019:1: main Initialise m_debuginfo --2019:1: main VG_(libdir) = /usr/local/libexec/valgrind --2019:1: main Getting launcher's name ... --2019:1: main ... /usr/local/bin/valgrind --2019:1: main Get hardware capabilities ... --2019:1: machine ARMv7 VFP 1 VFP2 1 VFP3 1 NEON 1 --2019:1: cache Could not autodetect cache info --2019:1: main ... arch = ARM, hwcaps = ARMv7-neon-vfp --2019:1: main Getting the working directory at startup --2019:1: main ... /home/rct --2019:1: main Split up command line --2019:1: main (early_) Process Valgrind's command line options --2019:1: main Create initial image --2019:1: initimg Loading client --2019:1: initimg Setup client env --2019:2: initimg preload_string: --2019:2: initimg "/usr/local/libexec/valgrind/vgpreload_core-arm-linux.so:/usr/local/libexec/valgrind/vgpreload_memcheck-arm-linux.so" --2019:1: initimg Setup client stack: size will be 8388608 --2019:2: initimg ARM has-neon from-auxv: YES --2019:2: initimg ARM has-tls from-auxv: YES --2019:2: initimg stomping auxv entry 26 --2019:2: initimg Client info: initial_IP=0x41000A00 initial_TOC=0x0 brk_base=0x13B000 --2019:2: initimg Client info: initial_SP=0xBDD4ACC0 max_stack_size=8388608 --2019:1: initimg Setup client data (brk) segment --2019:1: main Setup file descriptors --2019:1: main Create fake /proc/<pid>/cmdline --2019:1: main Create fake /proc/<pid>/auxv --2019:1: main Initialise the tool part 1 (pre_clo_init) --2019:1:mallocfr deferred_reclaimSuperblock NULL (prev 0x616A6000) owner VALGRIND/core --2019:1:mallocfr newSuperblock at 0x61AA6000 (pszB 4194288) owner VALGRIND/core --2019:1: main Print help and quit, if requested --2019:1: main (main_) Process Valgrind's command line options, setup logging --2019:1: main Print the preamble... ==2019== Memcheck, a memory error detector ==2019== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al. ==2019== Using Valgrind-3.18.1 and LibVEX; rerun with -h for copyright info ==2019== Command: ls ==2019== --2019:1: main ...finished the preamble --2019:1: main Initialise the tool part 2 (post_clo_init) --2019:1: main Initialise TT/TC --2019-- TT/TC: cache: ignoring --avg-transtab-entry-size=0, using tool provided default 640 --2019-- TT/TC: cache: 32 sectors of 27,597,024 bytes each = 883,104,768 total TC --2019-- TT/TC: table: 32 tables[42588] of C 4,088,448 + H 851,760 bytes each = 158,086,656 total TT --2019-- TT/TC: table: 42588 tt entries each = 1,362,816 total tt entries --2019-- TT/TC: table: 32 htt[65521] of 131,042 bytes each = 4,193,344 total HTT (htt[65521] 65% max occup) --2019:1: main Initialise redirects --2019:1:mallocfr newSuperblock at 0x61F21000 (pszB 1048560) owner VALGRIND/dinfo --2019:1: main Load initial debug info --2019-- di_notify_mmap-0: --2019-- di_notify_mmap-1: 0x108000-0x128fff r-x --2019-- di_notify_mmap-2: /bin/ls.coreutils --2019-- di_notify_mmap-3: is_rx_map 1, is_rw_map 0, is_ro_map 0 --2019-- di_notify_mmap-4: noting details in DebugInfo* at 0x61F21330 --2019-- di_notify_mmap-6: no dinfo loaded /bin/ls.coreutils (no rx or no rw mapping) --2019-- di_notify_mmap-0: --2019-- di_notify_mmap-1: 0x138000-0x139fff rw- --2019-- di_notify_mmap-2: /bin/ls.coreutils --2019-- di_notify_mmap-3: is_rx_map 0, is_rw_map 1, is_ro_map 0 --2019-- di_notify_mmap-4: noting details in DebugInfo* at 0x61F21330 --2019-- di_notify_mmap-5: achieved accept state for /bin/ls.coreutils --2019:1:mallocfr newSuperblock at 0x62021000 (pszB 65520) owner VALGRIND/demangle --2019-- di_notify_mmap-0: --2019-- di_notify_mmap-1: 0x41000000-0x41025fff r-x --2019-- di_notify_mmap-2: /lib/ld-2.33.so --2019-- di_notify_mmap-3: is_rx_map 1, is_rw_map 0, is_ro_map 0 --2019-- di_notify_mmap-4: noting details in DebugInfo* at 0x61F36810 --2019-- di_notify_mmap-6: no dinfo loaded /lib/ld-2.33.so (no rx or no rw mapping) --2019-- di_notify_mmap-0: --2019-- di_notify_mmap-1: 0x41035000-0x41036fff rw- --2019-- di_notify_mmap-2: /lib/ld-2.33.so --2019-- di_notify_mmap-3: is_rx_map 0, is_rw_map 1, is_ro_map 0 --2019-- di_notify_mmap-4: noting details in DebugInfo* at 0x61F36810 --2019-- di_notify_mmap-5: achieved accept state for /lib/ld-2.33.so --2019:1:mallocfr newSuperblock at 0x62031000 (pszB 1048560) owner VALGRIND/dinfo --2019:1:hashtabl resizing table `di.storage.addStr.1' from 769 to 1543 (total elems 770) --2019-- cfsi range rx-mappings coverage check: Covered 0x0-0xffffffff --2019:2:transtab discard_translations(0x4101e470, 1) req by redir_new_DebugInfo(from_addr) --2019:2:transtab FAST, ec = 15 --2019:2:transtab discard_translations(0x580d604c, 1) req by redir_new_DebugInfo(to_addr) --2019:2:transtab FAST, ec = 107 --2019:2:transtab discard_translations(0x4101e551, 1) req by redir_new_DebugInfo(from_addr) --2019:2:transtab FAST, ec = 15 --2019:2:transtab discard_translations(0x580d6190, 1) req by redir_new_DebugInfo(to_addr) --2019:2:transtab FAST, ec = 107 --2019:2:transtab discard_translations(0x4101ec81, 1) req by redir_new_DebugInfo(from_addr) --2019:2:transtab FAST, ec = 15 --2019:2:transtab discard_translations(0x580d6020, 1) req by redir_new_DebugInfo(to_addr) --2019:2:transtab FAST, ec = 107 --2019:2:transtab discard_translations(0x4101f880, 1) req by redir_new_DebugInfo(from_addr) --2019:2:transtab FAST, ec = 15 --2019:2:transtab discard_translations(0x580d6084, 1) req by redir_new_DebugInfo(to_addr) --2019:2:transtab FAST, ec = 107 --2019-- di_notify_mmap-0: --2019-- di_notify_mmap-1: 0x58000000-0x5824cfff r-x --2019-- di_notify_mmap-2: /usr/local/libexec/valgrind/memcheck-arm-linux --2019-- di_notify_mmap-3: is_rx_map 1, is_rw_map 0, is_ro_map 0 --2019-- di_notify_mmap-4: noting details in DebugInfo* at 0x61F36A20 --2019-- di_notify_mmap-6: no dinfo loaded /usr/local/libexec/valgrind/memcheck-arm-linux (no rx or no rw mapping) --2019-- di_notify_mmap-0: --2019-- di_notify_mmap-1: 0x5825d000-0x5825ffff rw- --2019-- di_notify_mmap-2: /usr/local/libexec/valgrind/memcheck-arm-linux --2019-- di_notify_mmap-3: is_rx_map 0, is_rw_map 1, is_ro_map 0 --2019-- di_notify_mmap-4: noting details in DebugInfo* at 0x61F36A20 --2019-- di_notify_mmap-5: achieved accept state for /usr/local/libexec/valgrind/memcheck-arm-linux --2019:1:hashtabl resizing table `di.storage.addStr.1' from 769 to 1543 (total elems 770) --2019:1:hashtabl resizing table `di.storage.addStr.1' from 1543 to 3079 (total elems 1544) --2019:1:hashtabl resizing table `di.storage.addStr.1' from 3079 to 6151 (total elems 3080) --2019:1:hashtabl resizing table `di.storage.DiCfSI_m_pool' from 769 to 1543 (total elems 770) --2019:1:hashtabl resizing table `di.storage.DiCfSI_m_pool' from 1543 to 3079 (total elems 1544) --2019:1:hashtabl resizing table `di.storage.DiCfSI_m_pool' from 3079 to 6151 (total elems 3080) --2019:1:mallocfr newSuperblock at 0x62131000 (pszB 1048560) owner VALGRIND/dinfo --2019:1:hashtabl resizing table `di.storage.DiCfSI_m_pool' from 6151 to 12289 (total elems 6152) --2019:1:mallocfr newSuperblock at 0x62231000 (pszB 1048560) owner VALGRIND/dinfo --2019:1:mallocfr newSuperblock at 0x62331000 (pszB 1048560) owner VALGRIND/dinfo --2019:1:mallocfr newSuperblock at 0x62431000 (pszB 1048560) owner VALGRIND/dinfo --2019:1:mallocfr newSuperblock at 0x62531000 (pszB 2052080) unsplittable owner VALGRIND/dinfo --2019:1:mallocfr newSuperblock at 0x62726000 (pszB 1048560) owner VALGRIND/dinfo --2019:1:mallocfr newSuperblock at 0x62826000 (pszB 1048560) owner VALGRIND/dinfo --2019:1:mallocfr newSuperblock at 0x62926000 (pszB 1048560) owner VALGRIND/dinfo --2019:1:mallocfr newSuperblock at 0x62A26000 (pszB 1282032) unsplittable owner VALGRIND/dinfo --2019:1:mallocfr deferred_reclaimSuperblock at 0x62926000 (pszB 1048560) (prev 0x0) owner VALGRIND/dinfo --2019:1:mallocfr deferred_reclaimSuperblock at 0x62826000 (pszB 1048560) (prev 0x62926000) owner VALGRIND/dinfo --2019:1:mallocfr reclaimSuperblock at 0x62926000 (pszB 1048560) owner VALGRIND/dinfo --2019:1:mallocfr deferred_reclaimSuperblock at 0x62331000 (pszB 1048560) (prev 0x62826000) owner VALGRIND/dinfo --2019:1:mallocfr reclaimSuperblock at 0x62826000 (pszB 1048560) owner VALGRIND/dinfo --2019:1:mallocfr deferred_reclaimSuperblock at 0x62231000 (pszB 1048560) (prev 0x62331000) owner VALGRIND/dinfo --2019:1:mallocfr reclaimSuperblock at 0x62331000 (pszB 1048560) owner VALGRIND/dinfo --2019:1:mallocfr shrink superblock 0x62531000 to (pszB 1171440) owner VALGRIND/dinfo (munmap-ing 0x6264F000 880640) --2019:1:mallocfr shrink superblock 0x62A26000 to (pszB 765936) owner VALGRIND/dinfo (munmap-ing 0x62AE1000 516096) --2019:1:mallocfr deferred_reclaimSuperblock at 0x62726000 (pszB 1048560) (prev 0x62231000) owner VALGRIND/dinfo --2019:1:mallocfr reclaimSuperblock at 0x62231000 (pszB 1048560) owner VALGRIND/dinfo --2019-- cfsi range rx-mappings coverage check: Covered 0x0-0xffffffff --2019:1: redir transfer ownership V -> C of 0x580d6000 .. 0x580d6fff --2019:1: main Initialise scheduler (phase 1) --2019:1: sched sched_init_phase1 --2019:1: main Tell tool about initial permissions --2019:2: main tell tool about 0000108000-0000128fff r-x --2019:2: main tell tool about 0000138000-0000139fff rw- --2019:2: main tell tool about 000013a000-000013afff rw- --2019:2: main tell tool about 0004000000-0004000fff rwx --2019:2: main tell tool about 0041000000-0041025fff r-x --2019:2: main tell tool about 0041035000-0041036fff rw- --2019:2: main tell tool about 00580d6000-00580d6fff r-x --2019:2: main tell tool about 00bdd4a000-00bdd4afff rw- --2019:2: main tell tool about 00ffff0000-00ffff0fff r-x --2019:2: main mark stack inaccessible 00bdd4a000-00bdd4acbf --2019:1: main Initialise scheduler (phase 2) --2019:1: sched sched_init_phase2: tid_main=1, cls_end=0xbdd4afff, cls_sz=8388608 --2019:1: main Finalise initial image --2019:1: main Initialise signal management --2019:1: main Load suppressions --2019:2: stacks register [start-end] [0xBDD4A000-0xBDD4AFFF] as stack 0 --2019:1: main --2019:1: main --2019:1: aspacem <<< SHOW_SEGMENTS: Memory layout at client startup (38 segments) --2019:1: aspacem 3 segment names in 3 slots --2019:1: aspacem freelist is empty --2019:1: aspacem (0,4,5) /usr/local/libexec/valgrind/memcheck-arm-linux --2019:1: aspacem (1,55,3) /bin/ls.coreutils --2019:1: aspacem (2,77,3) /lib/ld-2.33.so --2019:1: aspacem 0: RSVN 0000000000-0000107fff 1081344 ----- SmFixed --2019:1: aspacem 1: file 0000108000-0000128fff 135168 r-x-- d=0xb302 i=77 o=0 (1,55) --2019:1: aspacem 2: RSVN 0000129000-0000137fff 61440 ----- SmFixed --2019:1: aspacem 3: file 0000138000-0000139fff 8192 rw--- d=0xb302 i=77 o=131072 (1,55) --2019:1: aspacem 4: anon 000013a000-000013afff 4096 rw--- --2019:1: aspacem 5: RSVN 000013b000-0003ffffff 62m ----- SmFixed --2019:1: aspacem 6: anon 0004000000-0004000fff 4096 rwx-- --2019:1: aspacem 7: RSVN 0004001000-00047fffff 8384512 ----- SmLower --2019:1: aspacem 8: 0004800000-0040ffffff 968m --2019:1: aspacem 9: file 0041000000-0041025fff 155648 r-x-- d=0xb302 i=790 o=0 (2,77) --2019:1: aspacem 10: 0041026000-0041034fff 61440 --2019:1: aspacem 11: file 0041035000-0041036fff 8192 rw--- d=0xb302 i=790 o=151552 (2,77) --2019:1: aspacem 12: 0041037000-0057ffffff 367m --2019:1: aspacem 13: FILE 0058000000-00580d5fff 876544 r-x-- d=0xb302 i=271399 o=0 (0,4) --2019:1: aspacem 14: file 00580d6000-00580d6fff 4096 r-x-- d=0xb302 i=271399 o=876544 (0,4) --2019:1: aspacem 15: FILE 00580d7000-005824cfff 1531904 r-x-- d=0xb302 i=271399 o=880640 (0,4) --2019:1: aspacem 16: 005824d000-005825cfff 65536 --2019:1: aspacem 17: FILE 005825d000-005825ffff 12288 rw--- d=0xb302 i=271399 o=2412544 (0,4) --2019:1: aspacem 18: ANON 0058260000-0058bccfff 9883648 rw--- --2019:1: aspacem 19: 0058bcd000-00616a4fff 138m --2019:1: aspacem 20: RSVN 00616a5000-00616a5fff 4096 ----- SmFixed --2019:1: aspacem 21: ANON 00616a6000-0062254fff 11m rwx-- --2019:1: aspacem 22: 0062255000-0062430fff 1949696 --2019:1: aspacem 23: ANON 0062431000-006264efff 2220032 rwx-- --2019:1: aspacem 24: 006264f000-0062725fff 880640 --2019:1: aspacem 25: ANON 0062726000-0062825fff 1048576 rwx-- --2019:1: aspacem 26: 0062826000-0062a25fff 2097152 --2019:1: aspacem 27: ANON 0062a26000-0062ae0fff 765952 rwx-- --2019:1: aspacem 28: 0062ae1000-00bd54afff 1450m --2019:1: aspacem 29: RSVN 00bd54b000-00bdd49fff 8384512 ----- SmUpper --2019:1: aspacem 30: anon 00bdd4a000-00bdd4afff 4096 rw--- --2019:1: aspacem 31: 00bdd4b000-00bed29fff 15m --2019:1: aspacem 32: ANON 00bed2a000-00bed4afff 135168 rw--- --2019:1: aspacem 33: RSVN 00bed4b000-00bee17fff 839680 ----- SmFixed --2019:1: aspacem 34: ANON 00bee18000-00bee18fff 4096 r-x-- --2019:1: aspacem 35: RSVN 00bee19000-00fffeffff 1041m ----- SmFixed --2019:1: aspacem 36: anon 00ffff0000-00ffff0fff 4096 r-x-- --2019:1: aspacem 37: RSVN 00ffff1000-00ffffffff 61440 ----- SmFixed --2019:1: aspacem >>> --2019:1: main --2019:1: main --2019:1: main Running thread 1 --2019:1:syswrap- entering VG_(main_thread_wrapper_NORETURN) --2019:1: aspacem allocated valgrind thread stack at 0x62255000 size 1064960 --2019:1:syswrap- run_a_thread_NORETURN(tid=1): pre-thread_wrapper --2019:1:syswrap- thread_wrapper(tid=1): entry --2019:1: gdbsrv entering call_gdbserver init_reason ... pid 2019 tid 1 status VgTs_Runnable sched_jmpbuf_valid 0 --2019:1: gdbsrv gdbserver_init gdbserver embedded in valgrind: gdbserver protocol box extracted from gdb 6.6 ==2019== error 2 No such file or directory ==2019== error VG_(open) /proc/sys/kernel/yama/ptrace_scope --2019:1: gdbsrv Opening read side /tmp/vgdb-pipe-from-vgdb-to-2019-by-rct-on-??? --2019:1: gdbsrv result fd 3 --2019:1: gdbsrv result safe_fd 1030 --2019-- transtab: allocate sector 0 --2019:1:mallocfr deferred_reclaimSuperblock NULL (prev 0x62726000) owner VALGRIND/dinfo --2019:1:mallocfr reclaimSuperblock at 0x62726000 (pszB 1048560) owner VALGRIND/dinfo --2019:1:mallocfr newSuperblock at 0x6266F000 (pszB 65520) owner VALGRIND/ttaux --2019:1: signals extending a stack base 0xbdd4a000 down by 4096 new base 0xbdd49000 to cover 0xbdd49000 --2019:2: stacks change stack 0 from [0xBDD4A000-0xBDD4AFFF] to [0xBDD49000-0xBDD4AFFF] --2019-- di_notify_mmap-0: --2019-- di_notify_mmap-1: 0x4800000-0x4801fff rw- --2019-- di_notify_mmap-0: --2019-- di_notify_mmap-1: 0x4802000-0x4813fff r-x --2019-- di_notify_mmap-2: /usr/local/libexec/valgrind/vgpreload_core-arm-linux.so --2019-- di_notify_mmap-3: is_rx_map 1, is_rw_map 0, is_ro_map 0 --2019-- di_notify_mmap-4: noting details in DebugInfo* at 0x61F260B0 --2019-- di_notify_mmap-6: no dinfo loaded /usr/local/libexec/valgrind/vgpreload_core-arm-linux.so (no rx or no rw mapping) --2019-- di_notify_mmap-0: --2019-- di_notify_mmap-1: 0x4812000-0x4813fff rw- --2019-- di_notify_mmap-2: /usr/local/libexec/valgrind/vgpreload_core-arm-linux.so --2019-- di_notify_mmap-3: is_rx_map 0, is_rw_map 1, is_ro_map 0 --2019-- di_notify_mmap-4: noting details in DebugInfo* at 0x61F260B0 --2019-- di_notify_mmap-5: achieved accept state for /usr/local/libexec/valgrind/vgpreload_core-arm-linux.so --2019-- cfsi range rx-mappings coverage check: Covered 0x0-0xffffffff --2019-- di_notify_mmap-0: --2019-- di_notify_mmap-1: 0x4814000-0x4837fff r-x --2019-- di_notify_mmap-2: /usr/local/libexec/valgrind/vgpreload_memcheck-arm-linux.so --2019-- di_notify_mmap-3: is_rx_map 1, is_rw_map 0, is_ro_map 0 --2019-- di_notify_mmap-4: noting details in DebugInfo* at 0x61F56760 --2019-- di_notify_mmap-6: no dinfo loaded /usr/local/libexec/valgrind/vgpreload_memcheck-arm-linux.so (no rx or no rw mapping) --2019-- di_notify_mmap-0: --2019-- di_notify_mmap-1: 0x4836000-0x4837fff rw- --2019-- di_notify_mmap-2: /usr/local/libexec/valgrind/vgpreload_memcheck-arm-linux.so --2019-- di_notify_mmap-3: is_rx_map 0, is_rw_map 1, is_ro_map 0 --2019-- di_notify_mmap-4: noting details in DebugInfo* at 0x61F56760 --2019-- di_notify_mmap-5: achieved accept state for /usr/local/libexec/valgrind/vgpreload_memcheck-arm-linux.so --2019-- cfsi range rx-mappings coverage check: Covered 0x0-0xffffffff --2019-- di_notify_mmap-0: --2019-- di_notify_mmap-1: 0x4838000-0x483bfff r-- --2019-- di_notify_mmap-2: /etc/ld.so.cache --2019-- di_notify_mmap-3: is_rx_map 0, is_rw_map 0, is_ro_map 1 --2019-- di_notify_mmap-0: --2019-- di_notify_mmap-1: 0x483c000-0x4852fff r-x --2019-- di_notify_mmap-2: /lib/libcap.so.2.48 --2019-- di_notify_mmap-3: is_rx_map 1, is_rw_map 0, is_ro_map 0 --2019-- di_notify_mmap-4: noting details in DebugInfo* at 0x61F33C78 --2019-- di_notify_mmap-6: no dinfo loaded /lib/libcap.so.2.48 (no rx or no rw mapping) --2019-- di_notify_mmap-0: --2019-- di_notify_mmap-1: 0x4851000-0x4852fff rw- --2019-- di_notify_mmap-2: /lib/libcap.so.2.48 --2019-- di_notify_mmap-3: is_rx_map 0, is_rw_map 1, is_ro_map 0 --2019-- di_notify_mmap-4: noting details in DebugInfo* at 0x61F33C78 --2019-- di_notify_mmap-5: achieved accept state for /lib/libcap.so.2.48 --2019-- di_notify_mmap-0: --2019-- di_notify_mmap-1: 0x4853000-0x499efff r-x --2019-- di_notify_mmap-2: /lib/libc-2.33.so --2019-- di_notify_mmap-3: is_rx_map 1, is_rw_map 0, is_ro_map 0 --2019-- di_notify_mmap-4: noting details in DebugInfo* at 0x6203A968 --2019-- di_notify_mmap-6: no dinfo loaded /lib/libc-2.33.so (no rx or no rw mapping) --2019-- di_notify_mmap-0: --2019-- di_notify_mmap-1: 0x4995000-0x4997fff rw- --2019-- di_notify_mmap-2: /lib/libc-2.33.so --2019-- di_notify_mmap-3: is_rx_map 0, is_rw_map 1, is_ro_map 0 --2019-- di_notify_mmap-4: noting details in DebugInfo* at 0x6203A968 --2019-- di_notify_mmap-5: achieved accept state for /lib/libc-2.33.so --2019:1:mallocfr newSuperblock at 0x6268F000 (pszB 1048560) owner VALGRIND/dinfo --2019:1:mallocfr newSuperblock at 0x6278F000 (pszB 1048560) owner VALGRIND/dinfo --2019:1:mallocfr newSuperblock at 0x6288F000 (pszB 1048560) owner VALGRIND/dinfo --2019:1:mallocfr newSuperblock at 0x6491A000 (pszB 1048560) owner VALGRIND/dinfo --2019:1:mallocfr newSuperblock at 0x64A1A000 (pszB 1048560) owner VALGRIND/dinfo --2019:1:mallocfr newSuperblock at 0x64B1A000 (pszB 1048560) owner VALGRIND/dinfo valgrind: m_debuginfo/readelf.c:717 (get_elf_symbol_info): Assertion 'in_rx' failed. host stacktrace: ==2019== at 0x58045928: show_sched_status_wrk (m_libcassert.c:406) ==2019== by 0x58045ADB: report_and_quit (m_libcassert.c:477) ==2019== by 0x58045BF3: vgPlain_assert_fail (m_libcassert.c:543) ==2019== by 0x580841A7: get_elf_symbol_info (readelf.c:717) ==2019== by 0x580841A7: read_elf_symtab__normal.isra.0 (readelf.c:841) ==2019== by 0x58088D2F: vgModuleLocal_read_elf_debug_info (readelf.c:3439) ==2019== by 0x5807B9C7: di_notify_ACHIEVE_ACCEPT_STATE (debuginfo.c:969) ==2019== by 0x5807B9C7: vgPlain_di_notify_mmap (debuginfo.c:1326) ==2019== by 0x580B6B2F: vgModuleLocal_generic_PRE_sys_mmap (syswrap-generic.c:2466) ==2019== by 0x580C5523: vgSysWrap_arm_linux_sys_mmap2_before (syswrap-arm-linux.c:243) ==2019== by 0x580B2107: vgPlain_client_syscall (syswrap-main.c:2234) ==2019== by 0x580AC893: handle_syscall (scheduler.c:1211) ==2019== by 0x580AF60B: vgPlain_scheduler (scheduler.c:1529) ==2019== by 0x58103F87: thread_wrapper (syswrap-linux.c:101) ==2019== by 0x58103F87: run_a_thread_NORETURN (syswrap-linux.c:154) ==2019== by 0xFFFFFFFF: ??? sched status: running_tid=1 Thread 1: status = VgTs_Runnable syscall 192 (lwpid 2019) ==2019== at 0x4101E014: __mmap (mmap.c:42) ==2019== by 0x4101E014: mmap (mmap.c:34) ==2019== by 0x41008353: _dl_map_segments (dl-map-segments.h:94) ==2019== by 0x41008353: _dl_map_object_from_fd (dl-load.c:1258) ==2019== by 0x4100966F: _dl_map_object (dl-load.c:2321) ==2019== by 0x4100EEC7: openaux (dl-deps.c:64) ==2019== by 0x4101A7F7: _dl_catch_exception (dl-error-skeleton.c:208) ==2019== by 0x4100F1AB: _dl_map_object_deps (dl-deps.c:254) ==2019== by 0x41003A57: dl_main (rtld.c:1953) ==2019== by 0x410194FF: _dl_sysdep_start (dl-sysdep.c:250) ==2019== by 0x410017FF: _dl_start_final (rtld.c:489) ==2019== by 0x410017FF: _dl_start (rtld.c:582) ==2019== by 0x41000A0F: ??? (in /lib/ld-2.33.so) client stack range: [0xBDD49000 0xBDD4AFFF] client SP: 0xBDD49ED4 valgrind stack range: [0x62257000 0x62356FFF] top usage: 25260 of 1048576 Note: see also the FAQ in the source distribution. It contains workarounds to several common problems. In particular, if Valgrind aborted or crashed after identifying problems in your program, there's a good chance that fixing those problems will prevent Valgrind aborting or crashing, especially if it happened in m_mallocfree.c. If that doesn't help, please report this bug to: www.valgrind.org In the bug report, send all the above text, the valgrind version, and what OS and version you are using. Thanks. --2019:1: gdbsrv VG core calling VG_(gdbserver_exit) tid 1 will exit --2019:1: gdbsrv not connected --2019:1: gdbsrv remote_finish (reason orderly_finish) 1030 -1 --2019:1: gdbsrv 2019 (creator 2019) maybe unlinking /tmp/vgdb-pipe-from-vgdb-to-2019-by-rct-on-??? /tmp/vgdb-pipe-to-vgdb-from-2019-by-rct-on-??? /tmp/vgdb-pipe-shared-mem-vgdb-2019-by-rct-on-???
A few words on what is happening. valgrind execs memcheck. memcheck loads the guest and ld.so and starts running them in the Valgrind VM. ld.so then loads dependenv shared libs. I see libc being loaded (trimmed a bit): --2019-- di_notify_mmap-1: 0x4853000-0x499efff r-x --2019-- di_notify_mmap-2: /lib/libc-2.33.so --2019-- di_notify_mmap-1: 0x4995000-0x4997fff rw- --2019-- di_notify_mmap-2: /lib/libc-2.33.so --2019-- di_notify_mmap-5: achieved accept state for /lib/libc-2.33.so The code that is failing is /* This could actually wrap around and cause ML_(find_rx_mapping) to assert. But that seems so unlikely, let's wait for it to happen before fixing it. */ in_rx = (ML_(find_rx_mapping)( di, (*sym_avmas_out).main, (*sym_avmas_out).main + *sym_size_out - 1) != NULL); if (in_text) vg_assert(in_rx); This is supposed to be finding the mapped memory for the rx mapping but for some reason it is failing. Could you upload an attachment with the output when using '-d -d -d --trace-symtab=yes' please?
using '-d -d -d --trace-symtab=yes' [root@unbm ~] $ /tmp/valgrind/bin/valgrind -d -d -d --trace-symtab=yes --error-limit=no --leak-check=full --tool=memcheck /tmp/ld-2.15.so /usr/bin/last --1637:1:debuglog DebugLog system started by Stage 1, level 3 logging requested --1637:1:launcher tool 'memcheck' requested --1637:2:launcher selecting platform for '/tmp/ld-2.15.so' --1637:2:launcher opened '/tmp/ld-2.15.so' --1637:2:launcher read 4096 bytes from '/tmp/ld-2.15.so' --1637:2:launcher selected platform 'arm-linux' --1637:1:launcher selected platform 'arm-linux' --1637:1:launcher launching /tmp/valgrind/libexec/valgrind/memcheck-arm-linux --1637:1:debuglog DebugLog system started by Stage 2 (main), level 3 logging requested --1637:1: main Welcome to Valgrind version 3.22.0 debug logging --1637:1: main Checking current stack is plausible --1637:1: main Checking initial stack was noted --1637:1: main Starting the address space manager --1637:2: aspacem sp_at_startup = 0x00be962b40 (supplied) --1637:2: aspacem minAddr = 0x0004000000 (computed) --1637:2: aspacem maxAddr = 0x00be961fff (computed) --1637:2: aspacem cStart = 0x0004000000 (computed) --1637:2: aspacem vStart = 0x00614b1000 (computed) --1637:2: aspacem suggested_clstack_end = 0x00bd962fff (computed) --1637:2: aspacem <<< SHOW_SEGMENTS: Initial layout (5 segments) --1637:2: aspacem 0 segment names in 0 slots --1637:2: aspacem freelist is empty --1637:2: aspacem 0: RSVN 0000000000-0003ffffff 64m ----- SmFixed --1637:2: aspacem 1: 0004000000-00614b0fff 1492m --1637:2: aspacem 2: RSVN 00614b1000-00614b1fff 4096 ----- SmFixed --1637:2: aspacem 3: 00614b2000-00be961fff 1492m --1637:2: aspacem 4: RSVN 00be962000-00ffffffff 1046m ----- SmFixed --1637:2: aspacem >>> --1637:2: aspacem Reading /proc/self/maps --1637:2: aspacem <<< SHOW_SEGMENTS: With contents of /proc/self/maps (13 segments) --1637:2: aspacem 1 segment names in 1 slots --1637:2: aspacem freelist is empty --1637:2: aspacem (0,4,3) /tmp/valgrind/libexec/valgrind/memcheck-arm-linux --1637:2: aspacem 0: RSVN 0000000000-0003ffffff 64m ----- SmFixed --1637:2: aspacem 1: 0004000000-0057ffffff 1344m --1637:2: aspacem 2: FILE 0058000000-0058232fff 2306048 r-x-- d=0x001 i=47517 o=0 (0,4) --1637:2: aspacem 3: 0058233000-005823afff 32768 --1637:2: aspacem 4: FILE 005823b000-005823cfff 8192 rw--- d=0x001 i=47517 o=2306048 (0,4) --1637:2: aspacem 5: ANON 005823d000-0058bacfff 9895936 rw--- --1637:2: aspacem 6: 0058bad000-00614b0fff 137m --1637:2: aspacem 7: RSVN 00614b1000-00614b1fff 4096 ----- SmFixed --1637:2: aspacem 8: 00614b2000-00be941fff 1492m --1637:2: aspacem 9: ANON 00be942000-00be962fff 135168 rw--- --1637:2: aspacem 10: RSVN 00be963000-00fffeffff 1046m ----- SmFixed --1637:2: aspacem 11: anon 00ffff0000-00ffff0fff 4096 r-x-- --1637:2: aspacem 12: RSVN 00ffff1000-00ffffffff 61440 ----- SmFixed --1637:2: aspacem >>> --1637:1: main Address space manager is running --1637:1: main Starting the dynamic memory manager --1637:1:mallocfr newSuperblock at 0x614B2000 (pszB 4194288) owner VALGRIND/core --1637:1:mallocfr deferred_reclaimSuperblock at 0x614B2000 (pszB 4194288) (prev 0x0) owner VALGRIND/core --1637:1: main Dynamic memory manager is running --1637:1: main Initialise m_debuginfo --1637:1: main VG_(libdir) = /tmp/valgrind/libexec/valgrind --1637:1: main Getting launcher's name ... --1637:1: main ... /tmp/valgrind/bin/valgrind --1637:1: main Get hardware capabilities ... --1637:1: machine ARMv7 VFP 1 VFP2 1 VFP3 1 NEON 1 --1637:1: cache Could not autodetect cache info --1637:1: main ... arch = ARM, hwcaps = ARMv7-neon-vfp --1637:1: main Getting the working directory at startup --1637:1: main ... /root --1637:1: main Split up command line --1637:1: main (early_) Process Valgrind's command line options --1637:1: main Create initial image --1637:1: initimg Loading client --1637:1: initimg Setup client env --1637:2: initimg preload_string: --1637:2: initimg "/tmp/valgrind/libexec/valgrind/vgpreload_core-arm-linux.so:/tmp/valgrind/libexec/valgrind/vgpreload_memcheck-arm-linux.so" --1637:1: initimg Setup client stack: size will be 8388608 --1637:2: initimg ARM has-neon from-auxv: YES --1637:2: initimg ARM has-tls from-auxv: YES --1637:2: initimg Client info: initial_IP=0x108C81 initial_TOC=0x0 brk_base=0x128000 --1637:2: initimg Client info: initial_SP=0xBD962BB0 max_stack_size=8388608 --1637:1: initimg Setup client data (brk) segment --1637:1: main Setup file descriptors --1637:1: main Create fake /proc/<pid>/cmdline --1637:1: main Create fake /proc/<pid>/auxv --1637:1: main Initialise the tool part 1 (pre_clo_init) --1637:1:mallocfr deferred_reclaimSuperblock NULL (prev 0x614B2000) owner VALGRIND/core --1637:1:mallocfr newSuperblock at 0x618B2000 (pszB 4194288) owner VALGRIND/core --1637:1: main Print help and quit, if requested --1637:1: main (main_) Process Valgrind's command line options, setup logging --1637:1: main Print the preamble... ==1637== Memcheck, a memory error detector ==1637== Copyright (C) 2002-2022, and GNU GPL'd, by Julian Seward et al. ==1637== Using Valgrind-3.22.0 and LibVEX; rerun with -h for copyright info ==1637== Command: /tmp/ld-2.15.so /usr/bin/last ==1637== --1637:1: main ...finished the preamble --1637:1: main Initialise the tool part 2 (post_clo_init) --1637:1: main Initialise TT/TC --1637-- TT/TC: cache: ignoring --avg-transtab-entry-size=0, using tool provided default 640 --1637-- TT/TC: cache: 32 sectors of 27,597,024 bytes each = 883,104,768 total TC --1637-- TT/TC: table: 32 tables[42588] of C 4,088,448 + H 851,760 bytes each = 158,086,656 total TT --1637-- TT/TC: table: 42588 tt entries each = 1,362,816 total tt entries --1637-- TT/TC: table: 32 htt[65521] of 131,042 bytes each = 4,193,344 total HTT (htt[65521] 65% max occup) --1637:1: main Initialise redirects --1637:1:mallocfr newSuperblock at 0x61D2D000 (pszB 1048560) owner VALGRIND/dinfo --1637:1: main Load initial debug info --1637-- di_notify_mmap-0: --1637-- di_notify_mmap-1: 0x108000-0x108fff r-x --1637-- di_notify_mmap-2: /tmp/ld-2.15.so --1637-- di_notify_mmap-3: is_rx_map 1, is_rw_map 0, is_ro_map 0 --1637-- check_elf_and_get_rw_loads: ++*rw_load_count to 1 for /tmp/ld-2.15.so p_vaddr 0x1ed70 p_offset 28016, p_filesz 0 --1637-- di_notify_mmap-4: noting details in DebugInfo* at 0x61D2D330 --1637-- di_notify_mmap-6: no dinfo loaded /tmp/ld-2.15.so (no rx or no rw mapping) --1637-- di_notify_mmap-0: --1637-- di_notify_mmap-1: 0x126000-0x126fff rw- --1637-- di_notify_mmap-2: /tmp/ld-2.15.so --1637-- di_notify_mmap-3: is_rx_map 0, is_rw_map 1, is_ro_map 0 --1637-- check_elf_and_get_rw_loads: ++*rw_load_count to 1 for /tmp/ld-2.15.so p_vaddr 0x1ed70 p_offset 28016, p_filesz 0 --1637-- di_notify_mmap-4: noting details in DebugInfo* at 0x61D2D330 --1637-- di_notify_mmap-5: achieved accept state for /tmp/ld-2.15.so ------ start ELF OBJECT ------------------------------------------------------- ------ name = /tmp/ld-2.15.so Un-de-overlapped _DebugInfoMappings: [0] avma 0x108000 size 4096 foff 0 rx -- -- [1] avma 0x126000 size 4096 foff 24576 -- rw -- De-overlapped DebugInfoMappings: [0] avma 0x108000 size 4096 foff 0 rx -- -- [1] avma 0x126000 size 4096 foff 24576 -- rw -- Checking that there are no remaining overlaps. Check successful. ------ Basic facts about the object ------ object: n_oimage 598333 phdr: ioff 52 nent 7 ent_szB 32 shdr: ioff 571300 nent 33 ent_szB 40 rx_map: avma 0x108000 size 4096 foff 0 rw_map: avma 0x126000 size 4096 foff 24576 shdr: string table at 570979 ------ Examining the program headers ------ PT_LOAD[1]: p_vaddr 0x0 (prev 0x0) PT_LOAD[1]: p_offset 0, p_filesz 312, perms r-x PT_LOAD[1]: acquired as rx, bias 0x108000 PT_LOAD[2]: p_vaddr 0x1ed70 (prev 0x0) PT_LOAD[2]: p_offset 28016, p_filesz 0, perms rw- PT_LOAD[2]: acquired as rw, bias 0x108000 No soname found; using (fake) "NONE" ------ Examining the section headers ------ rx: at 0x108000 are mapped foffsets 0 .. 4095 rx: contains these svma regions: svmas 0x0 .. 0x16b8f with bias 0x108000 rw: at 0x126000 are mapped foffsets 24576 .. 28671 rw: contains these svma regions: svmas 0x1ed70 .. 0x1f95f with bias 0x108000 [sec 0] rx al 0 foff 0 .. 0 svma 0x0 name "" zero sized section "", ignoring [sec 1] rx al 4 foff 276 .. 311 svma 0x114 name ".note.gnu.build-id" [sec 2] rx al 4 foff 312 .. 499 svma 0x138 name ".hash" [sec 3] rx al 4 foff 312 .. 527 svma 0x1F4 name ".gnu.hash" [sec 4] rx al 4 foff 312 .. 759 svma 0x2CC name ".dynsym" [sec 5] rx al 1 foff 312 .. 706 svma 0x48C name ".dynstr" [sec 6] rx al 2 foff 312 .. 367 svma 0x618 name ".gnu.version" [sec 7] rx al 4 foff 312 .. 403 svma 0x650 name ".gnu.version_d" [sec 8] rx al 4 foff 312 .. 463 svma 0x6AC name ".rel.dyn" [sec 9] rx al 4 foff 312 .. 359 svma 0x744 name ".rel.plt" [sec 10] rx al 4 foff 312 .. 415 svma 0x774 name ".plt" acquiring .plt avma = 0x108774 [sec 11] rx al 16 foff 312 .. 75819 svma 0x7E0 name ".text" acquiring .text svma = 0x7e0 .. 0x12ed3 acquiring .text avma = 0x1087e0 .. 0x11aed3 acquiring .text bias = 0x108000 [sec 12] rx al 4 foff 312 .. 15559 svma 0x12ED4 name ".rodata" acquiring .rodata svma = 0x12ed4 .. 0x16a63 acquiring .rodata avma = 0x11aed4 .. 0x11ea63 acquiring .rodata bias = 0x108000 [sec 13] rx al 4 foff 312 .. 395 svma 0x16A64 name ".ARM.extab" acquiring .extab svma = 0x16a64 .. 0x16ab7 acquiring .extab avma = 0x11ea64 .. 0x11eab7 acquiring .extab bias = 0x108000 [sec 14] rx al 4 foff 312 .. 527 svma 0x16AB8 name ".ARM.exidx" acquiring .exidx svma = 0x16ab8 .. 0x16b8f acquiring .exidx avma = 0x11eab8 .. 0x11eb8f acquiring .exidx bias = 0x108000 [sec 15] rw al 8 foff 28016 .. 28487 svma 0x1ED70 name ".data.rel.ro" [sec 16] rw al 4 foff 28016 .. 28199 svma 0x1EF48 name ".dynamic" [sec 17] rw al 4 foff 28016 .. 28087 svma 0x1F000 name ".got" acquiring .got avma = 0x127000 [sec 18] rw al 8 foff 28016 .. 30115 svma 0x1F048 name ".data" acquiring .data svma = 0x1f048 .. 0x1f87b acquiring .data avma = 0x127048 .. 0x12787b acquiring .data bias = 0x108000 [sec 19] rw al 4 foff 28016 .. 28243 svma 0x1F87C name ".bss" acquiring .bss svma = 0x1f87c .. 0x1f95f acquiring .bss avma = 0x12787c .. 0x12795f acquiring .bss bias = 0x108000 [sec 20] rx al 1 foff 312 .. 353 svma 0x0 name ".comment" [sec 21] rx al 1 foff 354 .. 408 svma 0x0 name ".ARM.attributes" [sec 22] rx al 8 foff 416 .. 3127 svma 0x0 name ".debug_aranges" [sec 23] rx al 1 foff 3128 .. 333824 svma 0x0 name ".debug_info" [sec 24] rx al 1 foff 333825 .. 366463 svma 0x0 name ".debug_abbrev" [sec 25] rx al 1 foff 366464 .. 417693 svma 0x0 name ".debug_line" [sec 26] rx al 4 foff 417696 .. 425975 svma 0x0 name ".debug_frame" [sec 27] rx al 1 foff 425976 .. 447239 svma 0x0 name ".debug_str" [sec 28] rx al 1 foff 447240 .. 548714 svma 0x0 name ".debug_loc" [sec 29] rx al 1 foff 548715 .. 570978 svma 0x0 name ".debug_ranges" [sec 30] rx al 1 foff 570979 .. 571297 svma 0x0 name ".shstrtab" [sec 31] rx al 4 foff 572620 .. 590459 svma 0x0 name ".symtab" [sec 32] rx al 1 foff 590460 .. 598332 svma 0x0 name ".strtab" .dynsym : ioff 312 .. 759 .dynstr : ioff 312 .. 706 .symtab : ioff 572620 .. 590459 .strtab : ioff 590460 .. 598332 --- Reading (ELF, standard) symbol table (1115 entries) --- raw symbol [ 1]: LOC SEC : svma 0x0000000114, sz 0 NONAME raw symbol [ 2]: LOC SEC : svma 0x0000000138, sz 0 NONAME raw symbol [ 3]: LOC SEC : svma 0x00000001f4, sz 0 NONAME raw symbol [ 4]: LOC SEC : svma 0x00000002cc, sz 0 NONAME raw symbol [ 5]: LOC SEC : svma 0x000000048c, sz 0 NONAME raw symbol [ 6]: LOC SEC : svma 0x0000000618, sz 0 NONAME raw symbol [ 7]: LOC SEC : svma 0x0000000650, sz 0 NONAME raw symbol [ 8]: LOC SEC : svma 0x00000006ac, sz 0 NONAME raw symbol [ 9]: LOC SEC : svma 0x0000000744, sz 0 NONAME raw symbol [ 10]: LOC SEC : svma 0x0000000774, sz 0 NONAME raw symbol [ 11]: LOC SEC : svma 0x00000007e0, sz 0 NONAME raw symbol [ 12]: LOC SEC : svma 0x0000012ed4, sz 0 NONAME raw symbol [ 13]: LOC SEC : svma 0x0000016a64, sz 0 NONAME raw symbol [ 14]: LOC SEC : svma 0x0000016ab8, sz 0 NONAME raw symbol [ 15]: LOC SEC : svma 0x000001ed70, sz 0 NONAME raw symbol [ 16]: LOC SEC : svma 0x000001ef48, sz 0 NONAME raw symbol [ 17]: LOC SEC : svma 0x000001f000, sz 0 NONAME raw symbol [ 18]: LOC SEC : svma 0x000001f048, sz 0 NONAME raw symbol [ 19]: LOC SEC : svma 0x000001f87c, sz 0 NONAME raw symbol [ 20]: LOC SEC : svma 0x0000000000, sz 0 NONAME raw symbol [ 21]: LOC SEC : svma 0x0000000000, sz 0 NONAME raw symbol [ 22]: LOC SEC : svma 0x0000000000, sz 0 NONAME raw symbol [ 23]: LOC SEC : svma 0x0000000000, sz 0 NONAME raw symbol [ 24]: LOC SEC : svma 0x0000000000, sz 0 NONAME raw symbol [ 25]: LOC SEC : svma 0x0000000000, sz 0 NONAME raw symbol [ 26]: LOC SEC : svma 0x0000000000, sz 0 NONAME raw symbol [ 27]: LOC SEC : svma 0x0000000000, sz 0 NONAME raw symbol [ 28]: LOC SEC : svma 0x0000000000, sz 0 NONAME raw symbol [ 29]: LOC SEC : svma 0x0000000000, sz 0 NONAME raw symbol [ 30]: LOC FIL : svma 0x0000000000, sz 0 rtld.c raw symbol [ 31]: LOC NOT : svma 0x0000000c80, sz 0 $t raw symbol [ 32]: LOC FUN : svma 0x00000039d5, sz 1296 _dl_start valgrind: m_debuginfo/readelf.c:719 (get_elf_symbol_info): Assertion 'in_rx' failed. Segmentation fault (core dumped)
(In reply to Paul Floyd from comment #3) > A few words on what is happening. > > valgrind execs memcheck. memcheck loads the guest and ld.so and starts > running them in the Valgrind VM. ld.so then loads dependenv shared libs. > > I see libc being loaded (trimmed a bit): > --2019-- di_notify_mmap-1: 0x4853000-0x499efff r-x > --2019-- di_notify_mmap-2: /lib/libc-2.33.so > --2019-- di_notify_mmap-1: 0x4995000-0x4997fff rw- > --2019-- di_notify_mmap-2: /lib/libc-2.33.so > --2019-- di_notify_mmap-5: achieved accept state for /lib/libc-2.33.so > > The code that is failing is > > /* This could actually wrap around and cause > ML_(find_rx_mapping) to assert. But that seems so unlikely, > let's wait for it to happen before fixing it. */ > in_rx = (ML_(find_rx_mapping)( > di, > (*sym_avmas_out).main, > (*sym_avmas_out).main + *sym_size_out - 1) != NULL); > if (in_text) > vg_assert(in_rx); > > This is supposed to be finding the mapped memory for the rx mapping but for > some reason it is failing. > > Could you upload an attachment with the output when using '-d -d -d > --trace-symtab=yes' please? [root@unbm ~] $ /tmp/valgrind/bin/valgrind -d -d -d --trace-symtab=yes --error-limit=no --leak-check=full --tool=memcheck /tmp/ld-2.15.so /usr/bin/last --1637:1:debuglog DebugLog system started by Stage 1, level 3 logging requested --1637:1:launcher tool 'memcheck' requested --1637:2:launcher selecting platform for '/tmp/ld-2.15.so' --1637:2:launcher opened '/tmp/ld-2.15.so' --1637:2:launcher read 4096 bytes from '/tmp/ld-2.15.so' --1637:2:launcher selected platform 'arm-linux' --1637:1:launcher selected platform 'arm-linux' --1637:1:launcher launching /tmp/valgrind/libexec/valgrind/memcheck-arm-linux --1637:1:debuglog DebugLog system started by Stage 2 (main), level 3 logging requested --1637:1: main Welcome to Valgrind version 3.22.0 debug logging --1637:1: main Checking current stack is plausible --1637:1: main Checking initial stack was noted --1637:1: main Starting the address space manager --1637:2: aspacem sp_at_startup = 0x00be962b40 (supplied) --1637:2: aspacem minAddr = 0x0004000000 (computed) --1637:2: aspacem maxAddr = 0x00be961fff (computed) --1637:2: aspacem cStart = 0x0004000000 (computed) --1637:2: aspacem vStart = 0x00614b1000 (computed) --1637:2: aspacem suggested_clstack_end = 0x00bd962fff (computed) --1637:2: aspacem <<< SHOW_SEGMENTS: Initial layout (5 segments) --1637:2: aspacem 0 segment names in 0 slots --1637:2: aspacem freelist is empty --1637:2: aspacem 0: RSVN 0000000000-0003ffffff 64m ----- SmFixed --1637:2: aspacem 1: 0004000000-00614b0fff 1492m --1637:2: aspacem 2: RSVN 00614b1000-00614b1fff 4096 ----- SmFixed --1637:2: aspacem 3: 00614b2000-00be961fff 1492m --1637:2: aspacem 4: RSVN 00be962000-00ffffffff 1046m ----- SmFixed --1637:2: aspacem >>> --1637:2: aspacem Reading /proc/self/maps --1637:2: aspacem <<< SHOW_SEGMENTS: With contents of /proc/self/maps (13 segments) --1637:2: aspacem 1 segment names in 1 slots --1637:2: aspacem freelist is empty --1637:2: aspacem (0,4,3) /tmp/valgrind/libexec/valgrind/memcheck-arm-linux --1637:2: aspacem 0: RSVN 0000000000-0003ffffff 64m ----- SmFixed --1637:2: aspacem 1: 0004000000-0057ffffff 1344m --1637:2: aspacem 2: FILE 0058000000-0058232fff 2306048 r-x-- d=0x001 i=47517 o=0 (0,4) --1637:2: aspacem 3: 0058233000-005823afff 32768 --1637:2: aspacem 4: FILE 005823b000-005823cfff 8192 rw--- d=0x001 i=47517 o=2306048 (0,4) --1637:2: aspacem 5: ANON 005823d000-0058bacfff 9895936 rw--- --1637:2: aspacem 6: 0058bad000-00614b0fff 137m --1637:2: aspacem 7: RSVN 00614b1000-00614b1fff 4096 ----- SmFixed --1637:2: aspacem 8: 00614b2000-00be941fff 1492m --1637:2: aspacem 9: ANON 00be942000-00be962fff 135168 rw--- --1637:2: aspacem 10: RSVN 00be963000-00fffeffff 1046m ----- SmFixed --1637:2: aspacem 11: anon 00ffff0000-00ffff0fff 4096 r-x-- --1637:2: aspacem 12: RSVN 00ffff1000-00ffffffff 61440 ----- SmFixed --1637:2: aspacem >>> --1637:1: main Address space manager is running --1637:1: main Starting the dynamic memory manager --1637:1:mallocfr newSuperblock at 0x614B2000 (pszB 4194288) owner VALGRIND/core --1637:1:mallocfr deferred_reclaimSuperblock at 0x614B2000 (pszB 4194288) (prev 0x0) owner VALGRIND/core --1637:1: main Dynamic memory manager is running --1637:1: main Initialise m_debuginfo --1637:1: main VG_(libdir) = /tmp/valgrind/libexec/valgrind --1637:1: main Getting launcher's name ... --1637:1: main ... /tmp/valgrind/bin/valgrind --1637:1: main Get hardware capabilities ... --1637:1: machine ARMv7 VFP 1 VFP2 1 VFP3 1 NEON 1 --1637:1: cache Could not autodetect cache info --1637:1: main ... arch = ARM, hwcaps = ARMv7-neon-vfp --1637:1: main Getting the working directory at startup --1637:1: main ... /root --1637:1: main Split up command line --1637:1: main (early_) Process Valgrind's command line options --1637:1: main Create initial image --1637:1: initimg Loading client --1637:1: initimg Setup client env --1637:2: initimg preload_string: --1637:2: initimg "/tmp/valgrind/libexec/valgrind/vgpreload_core-arm-linux.so:/tmp/valgrind/libexec/valgrind/vgpreload_memcheck-arm-linux.so" --1637:1: initimg Setup client stack: size will be 8388608 --1637:2: initimg ARM has-neon from-auxv: YES --1637:2: initimg ARM has-tls from-auxv: YES --1637:2: initimg Client info: initial_IP=0x108C81 initial_TOC=0x0 brk_base=0x128000 --1637:2: initimg Client info: initial_SP=0xBD962BB0 max_stack_size=8388608 --1637:1: initimg Setup client data (brk) segment --1637:1: main Setup file descriptors --1637:1: main Create fake /proc/<pid>/cmdline --1637:1: main Create fake /proc/<pid>/auxv --1637:1: main Initialise the tool part 1 (pre_clo_init) --1637:1:mallocfr deferred_reclaimSuperblock NULL (prev 0x614B2000) owner VALGRIND/core --1637:1:mallocfr newSuperblock at 0x618B2000 (pszB 4194288) owner VALGRIND/core --1637:1: main Print help and quit, if requested --1637:1: main (main_) Process Valgrind's command line options, setup logging --1637:1: main Print the preamble... ==1637== Memcheck, a memory error detector ==1637== Copyright (C) 2002-2022, and GNU GPL'd, by Julian Seward et al. ==1637== Using Valgrind-3.22.0 and LibVEX; rerun with -h for copyright info ==1637== Command: /tmp/ld-2.15.so /usr/bin/last ==1637== --1637:1: main ...finished the preamble --1637:1: main Initialise the tool part 2 (post_clo_init) --1637:1: main Initialise TT/TC --1637-- TT/TC: cache: ignoring --avg-transtab-entry-size=0, using tool provided default 640 --1637-- TT/TC: cache: 32 sectors of 27,597,024 bytes each = 883,104,768 total TC --1637-- TT/TC: table: 32 tables[42588] of C 4,088,448 + H 851,760 bytes each = 158,086,656 total TT --1637-- TT/TC: table: 42588 tt entries each = 1,362,816 total tt entries --1637-- TT/TC: table: 32 htt[65521] of 131,042 bytes each = 4,193,344 total HTT (htt[65521] 65% max occup) --1637:1: main Initialise redirects --1637:1:mallocfr newSuperblock at 0x61D2D000 (pszB 1048560) owner VALGRIND/dinfo --1637:1: main Load initial debug info --1637-- di_notify_mmap-0: --1637-- di_notify_mmap-1: 0x108000-0x108fff r-x --1637-- di_notify_mmap-2: /tmp/ld-2.15.so --1637-- di_notify_mmap-3: is_rx_map 1, is_rw_map 0, is_ro_map 0 --1637-- check_elf_and_get_rw_loads: ++*rw_load_count to 1 for /tmp/ld-2.15.so p_vaddr 0x1ed70 p_offset 28016, p_filesz 0 --1637-- di_notify_mmap-4: noting details in DebugInfo* at 0x61D2D330 --1637-- di_notify_mmap-6: no dinfo loaded /tmp/ld-2.15.so (no rx or no rw mapping) --1637-- di_notify_mmap-0: --1637-- di_notify_mmap-1: 0x126000-0x126fff rw- --1637-- di_notify_mmap-2: /tmp/ld-2.15.so --1637-- di_notify_mmap-3: is_rx_map 0, is_rw_map 1, is_ro_map 0 --1637-- check_elf_and_get_rw_loads: ++*rw_load_count to 1 for /tmp/ld-2.15.so p_vaddr 0x1ed70 p_offset 28016, p_filesz 0 --1637-- di_notify_mmap-4: noting details in DebugInfo* at 0x61D2D330 --1637-- di_notify_mmap-5: achieved accept state for /tmp/ld-2.15.so ------ start ELF OBJECT ------------------------------------------------------- ------ name = /tmp/ld-2.15.so Un-de-overlapped _DebugInfoMappings: [0] avma 0x108000 size 4096 foff 0 rx -- -- [1] avma 0x126000 size 4096 foff 24576 -- rw -- De-overlapped DebugInfoMappings: [0] avma 0x108000 size 4096 foff 0 rx -- -- [1] avma 0x126000 size 4096 foff 24576 -- rw -- Checking that there are no remaining overlaps. Check successful. ------ Basic facts about the object ------ object: n_oimage 598333 phdr: ioff 52 nent 7 ent_szB 32 shdr: ioff 571300 nent 33 ent_szB 40 rx_map: avma 0x108000 size 4096 foff 0 rw_map: avma 0x126000 size 4096 foff 24576 shdr: string table at 570979 ------ Examining the program headers ------ PT_LOAD[1]: p_vaddr 0x0 (prev 0x0) PT_LOAD[1]: p_offset 0, p_filesz 312, perms r-x PT_LOAD[1]: acquired as rx, bias 0x108000 PT_LOAD[2]: p_vaddr 0x1ed70 (prev 0x0) PT_LOAD[2]: p_offset 28016, p_filesz 0, perms rw- PT_LOAD[2]: acquired as rw, bias 0x108000 No soname found; using (fake) "NONE" ------ Examining the section headers ------ rx: at 0x108000 are mapped foffsets 0 .. 4095 rx: contains these svma regions: svmas 0x0 .. 0x16b8f with bias 0x108000 rw: at 0x126000 are mapped foffsets 24576 .. 28671 rw: contains these svma regions: svmas 0x1ed70 .. 0x1f95f with bias 0x108000 [sec 0] rx al 0 foff 0 .. 0 svma 0x0 name "" zero sized section "", ignoring [sec 1] rx al 4 foff 276 .. 311 svma 0x114 name ".note.gnu.build-id" [sec 2] rx al 4 foff 312 .. 499 svma 0x138 name ".hash" [sec 3] rx al 4 foff 312 .. 527 svma 0x1F4 name ".gnu.hash" [sec 4] rx al 4 foff 312 .. 759 svma 0x2CC name ".dynsym" [sec 5] rx al 1 foff 312 .. 706 svma 0x48C name ".dynstr" [sec 6] rx al 2 foff 312 .. 367 svma 0x618 name ".gnu.version" [sec 7] rx al 4 foff 312 .. 403 svma 0x650 name ".gnu.version_d" [sec 8] rx al 4 foff 312 .. 463 svma 0x6AC name ".rel.dyn" [sec 9] rx al 4 foff 312 .. 359 svma 0x744 name ".rel.plt" [sec 10] rx al 4 foff 312 .. 415 svma 0x774 name ".plt" acquiring .plt avma = 0x108774 [sec 11] rx al 16 foff 312 .. 75819 svma 0x7E0 name ".text" acquiring .text svma = 0x7e0 .. 0x12ed3 acquiring .text avma = 0x1087e0 .. 0x11aed3 acquiring .text bias = 0x108000 [sec 12] rx al 4 foff 312 .. 15559 svma 0x12ED4 name ".rodata" acquiring .rodata svma = 0x12ed4 .. 0x16a63 acquiring .rodata avma = 0x11aed4 .. 0x11ea63 acquiring .rodata bias = 0x108000 [sec 13] rx al 4 foff 312 .. 395 svma 0x16A64 name ".ARM.extab" acquiring .extab svma = 0x16a64 .. 0x16ab7 acquiring .extab avma = 0x11ea64 .. 0x11eab7 acquiring .extab bias = 0x108000 [sec 14] rx al 4 foff 312 .. 527 svma 0x16AB8 name ".ARM.exidx" acquiring .exidx svma = 0x16ab8 .. 0x16b8f acquiring .exidx avma = 0x11eab8 .. 0x11eb8f acquiring .exidx bias = 0x108000 [sec 15] rw al 8 foff 28016 .. 28487 svma 0x1ED70 name ".data.rel.ro" [sec 16] rw al 4 foff 28016 .. 28199 svma 0x1EF48 name ".dynamic" [sec 17] rw al 4 foff 28016 .. 28087 svma 0x1F000 name ".got" acquiring .got avma = 0x127000 [sec 18] rw al 8 foff 28016 .. 30115 svma 0x1F048 name ".data" acquiring .data svma = 0x1f048 .. 0x1f87b acquiring .data avma = 0x127048 .. 0x12787b acquiring .data bias = 0x108000 [sec 19] rw al 4 foff 28016 .. 28243 svma 0x1F87C name ".bss" acquiring .bss svma = 0x1f87c .. 0x1f95f acquiring .bss avma = 0x12787c .. 0x12795f acquiring .bss bias = 0x108000 [sec 20] rx al 1 foff 312 .. 353 svma 0x0 name ".comment" [sec 21] rx al 1 foff 354 .. 408 svma 0x0 name ".ARM.attributes" [sec 22] rx al 8 foff 416 .. 3127 svma 0x0 name ".debug_aranges" [sec 23] rx al 1 foff 3128 .. 333824 svma 0x0 name ".debug_info" [sec 24] rx al 1 foff 333825 .. 366463 svma 0x0 name ".debug_abbrev" [sec 25] rx al 1 foff 366464 .. 417693 svma 0x0 name ".debug_line" [sec 26] rx al 4 foff 417696 .. 425975 svma 0x0 name ".debug_frame" [sec 27] rx al 1 foff 425976 .. 447239 svma 0x0 name ".debug_str" [sec 28] rx al 1 foff 447240 .. 548714 svma 0x0 name ".debug_loc" [sec 29] rx al 1 foff 548715 .. 570978 svma 0x0 name ".debug_ranges" [sec 30] rx al 1 foff 570979 .. 571297 svma 0x0 name ".shstrtab" [sec 31] rx al 4 foff 572620 .. 590459 svma 0x0 name ".symtab" [sec 32] rx al 1 foff 590460 .. 598332 svma 0x0 name ".strtab" .dynsym : ioff 312 .. 759 .dynstr : ioff 312 .. 706 .symtab : ioff 572620 .. 590459 .strtab : ioff 590460 .. 598332 --- Reading (ELF, standard) symbol table (1115 entries) --- raw symbol [ 1]: LOC SEC : svma 0x0000000114, sz 0 NONAME raw symbol [ 2]: LOC SEC : svma 0x0000000138, sz 0 NONAME raw symbol [ 3]: LOC SEC : svma 0x00000001f4, sz 0 NONAME raw symbol [ 4]: LOC SEC : svma 0x00000002cc, sz 0 NONAME raw symbol [ 5]: LOC SEC : svma 0x000000048c, sz 0 NONAME raw symbol [ 6]: LOC SEC : svma 0x0000000618, sz 0 NONAME raw symbol [ 7]: LOC SEC : svma 0x0000000650, sz 0 NONAME raw symbol [ 8]: LOC SEC : svma 0x00000006ac, sz 0 NONAME raw symbol [ 9]: LOC SEC : svma 0x0000000744, sz 0 NONAME raw symbol [ 10]: LOC SEC : svma 0x0000000774, sz 0 NONAME raw symbol [ 11]: LOC SEC : svma 0x00000007e0, sz 0 NONAME raw symbol [ 12]: LOC SEC : svma 0x0000012ed4, sz 0 NONAME raw symbol [ 13]: LOC SEC : svma 0x0000016a64, sz 0 NONAME raw symbol [ 14]: LOC SEC : svma 0x0000016ab8, sz 0 NONAME raw symbol [ 15]: LOC SEC : svma 0x000001ed70, sz 0 NONAME raw symbol [ 16]: LOC SEC : svma 0x000001ef48, sz 0 NONAME raw symbol [ 17]: LOC SEC : svma 0x000001f000, sz 0 NONAME raw symbol [ 18]: LOC SEC : svma 0x000001f048, sz 0 NONAME raw symbol [ 19]: LOC SEC : svma 0x000001f87c, sz 0 NONAME raw symbol [ 20]: LOC SEC : svma 0x0000000000, sz 0 NONAME raw symbol [ 21]: LOC SEC : svma 0x0000000000, sz 0 NONAME raw symbol [ 22]: LOC SEC : svma 0x0000000000, sz 0 NONAME raw symbol [ 23]: LOC SEC : svma 0x0000000000, sz 0 NONAME raw symbol [ 24]: LOC SEC : svma 0x0000000000, sz 0 NONAME raw symbol [ 25]: LOC SEC : svma 0x0000000000, sz 0 NONAME raw symbol [ 26]: LOC SEC : svma 0x0000000000, sz 0 NONAME raw symbol [ 27]: LOC SEC : svma 0x0000000000, sz 0 NONAME raw symbol [ 28]: LOC SEC : svma 0x0000000000, sz 0 NONAME raw symbol [ 29]: LOC SEC : svma 0x0000000000, sz 0 NONAME raw symbol [ 30]: LOC FIL : svma 0x0000000000, sz 0 rtld.c raw symbol [ 31]: LOC NOT : svma 0x0000000c80, sz 0 $t raw symbol [ 32]: LOC FUN : svma 0x00000039d5, sz 1296 _dl_start valgrind: m_debuginfo/readelf.c:719 (get_elf_symbol_info): Assertion 'in_rx' failed. Segmentation fault (core dumped)
It is hitting an assert when reading ld-2.15.so The program headers say that this only has 312 bytes of executable code PT_LOAD[1]: p_offset 0, p_filesz 312, perms r-x then it tris to look at _dl_start raw symbol [ 32]: LOC FUN : svma 0x00000039d5, sz 1296 _dl_start which is 1296 bytes. Can you tell us why you are using ld-2.15.so in /tmp instead of somewhere more 'standard' like /lib or /usr/lib? And can you tell us if this is a copy of the system ld-2.15.so which I assume will be in one of those directories?
(In reply to Paul Floyd from comment #6) > It is hitting an assert when reading ld-2.15.so > > The program headers say that this only has 312 bytes of executable code > > PT_LOAD[1]: p_offset 0, p_filesz 312, perms r-x > then it tris to look at _dl_start > > raw symbol [ 32]: LOC FUN : svma 0x00000039d5, sz 1296 _dl_start > > which is 1296 bytes. > > Can you tell us why you are using ld-2.15.so in /tmp instead of somewhere > more 'standard' like /lib or /usr/lib? > > And can you tell us if this is a copy of the system ld-2.15.so which I > assume will be in one of those directories? Thanks for your reply. If use standard /lib/ld-2.15.so, the output is the following, /tmp/ld-2.15.so isn't stripped [root@test ~] $ /tmp/valgrind/bin/valgrind -d -d -d --trace-symtab=yes --error-limit=no --leak-check=full --tool=memcheck /usr/bin/last --1986:1:debuglog DebugLog system started by Stage 1, level 3 logging requested --1986:1:launcher tool 'memcheck' requested --1986:2:launcher selecting platform for '/usr/bin/last' --1986:2:launcher opened '/usr/bin/last' --1986:2:launcher read 4096 bytes from '/usr/bin/last' --1986:2:launcher selected platform 'arm-linux' --1986:1:launcher selected platform 'arm-linux' --1986:1:launcher launching /tmp/valgrind/libexec/valgrind/memcheck-arm-linux --1986:1:debuglog DebugLog system started by Stage 2 (main), level 3 logging requested --1986:1: main Welcome to Valgrind version 3.22.0 debug logging --1986:1: main Checking current stack is plausible --1986:1: main Checking initial stack was noted --1986:1: main Starting the address space manager --1986:2: aspacem sp_at_startup = 0x00bed6eb60 (supplied) --1986:2: aspacem minAddr = 0x0004000000 (computed) --1986:2: aspacem maxAddr = 0x00bed6dfff (computed) --1986:2: aspacem cStart = 0x0004000000 (computed) --1986:2: aspacem vStart = 0x00616b7000 (computed) --1986:2: aspacem suggested_clstack_end = 0x00bdd6efff (computed) --1986:2: aspacem <<< SHOW_SEGMENTS: Initial layout (5 segments) --1986:2: aspacem 0 segment names in 0 slots --1986:2: aspacem freelist is empty --1986:2: aspacem 0: RSVN 0000000000-0003ffffff 64m ----- SmFixed --1986:2: aspacem 1: 0004000000-00616b6fff 1494m --1986:2: aspacem 2: RSVN 00616b7000-00616b7fff 4096 ----- SmFixed --1986:2: aspacem 3: 00616b8000-00bed6dfff 1494m --1986:2: aspacem 4: RSVN 00bed6e000-00ffffffff 1042m ----- SmFixed --1986:2: aspacem >>> --1986:2: aspacem Reading /proc/self/maps --1986:2: aspacem <<< SHOW_SEGMENTS: With contents of /proc/self/maps (13 segments) --1986:2: aspacem 1 segment names in 1 slots --1986:2: aspacem freelist is empty --1986:2: aspacem (0,4,3) /tmp/valgrind/libexec/valgrind/memcheck-arm-linux --1986:2: aspacem 0: RSVN 0000000000-0003ffffff 64m ----- SmFixed --1986:2: aspacem 1: 0004000000-0057ffffff 1344m --1986:2: aspacem 2: FILE 0058000000-0058232fff 2306048 r-x-- d=0x001 i=47517 o=0 (0,4) --1986:2: aspacem 3: 0058233000-005823afff 32768 --1986:2: aspacem 4: FILE 005823b000-005823cfff 8192 rw--- d=0x001 i=47517 o=2306048 (0,4) --1986:2: aspacem 5: ANON 005823d000-0058bacfff 9895936 rw--- --1986:2: aspacem 6: 0058bad000-00616b6fff 139m --1986:2: aspacem 7: RSVN 00616b7000-00616b7fff 4096 ----- SmFixed --1986:2: aspacem 8: 00616b8000-00bed4dfff 1494m --1986:2: aspacem 9: ANON 00bed4e000-00bed6efff 135168 rw--- --1986:2: aspacem 10: RSVN 00bed6f000-00fffeffff 1042m ----- SmFixed --1986:2: aspacem 11: anon 00ffff0000-00ffff0fff 4096 r-x-- --1986:2: aspacem 12: RSVN 00ffff1000-00ffffffff 61440 ----- SmFixed --1986:2: aspacem >>> --1986:1: main Address space manager is running --1986:1: main Starting the dynamic memory manager --1986:1:mallocfr newSuperblock at 0x616B8000 (pszB 4194288) owner VALGRIND/core --1986:1:mallocfr deferred_reclaimSuperblock at 0x616B8000 (pszB 4194288) (prev 0x0) owner VALGRIND/core --1986:1: main Dynamic memory manager is running --1986:1: main Initialise m_debuginfo --1986:1: main VG_(libdir) = /tmp/valgrind/libexec/valgrind --1986:1: main Getting launcher's name ... --1986:1: main ... /tmp/valgrind/bin/valgrind --1986:1: main Get hardware capabilities ... --1986:1: machine ARMv7 VFP 1 VFP2 1 VFP3 1 NEON 1 --1986:1: cache Could not autodetect cache info --1986:1: main ... arch = ARM, hwcaps = ARMv7-neon-vfp --1986:1: main Getting the working directory at startup --1986:1: main ... /root --1986:1: main Split up command line --1986:1: main (early_) Process Valgrind's command line options --1986:1: main Create initial image --1986:1: initimg Loading client --1986:1: initimg Setup client env --1986:2: initimg preload_string: --1986:2: initimg "/tmp/valgrind/libexec/valgrind/vgpreload_core-arm-linux.so:/tmp/valgrind/libexec/valgrind/vgpreload_memcheck-arm-linux.so" --1986:1: initimg Setup client stack: size will be 8388608 --1986:2: initimg ARM has-neon from-auxv: YES --1986:2: initimg ARM has-tls from-auxv: YES --1986:2: initimg Client info: initial_IP=0x4000C81 initial_TOC=0x0 brk_base=0x96000 --1986:2: initimg Client info: initial_SP=0xBDD6EBC0 max_stack_size=8388608 --1986:1: initimg Setup client data (brk) segment --1986:1: main Setup file descriptors --1986:1: main Create fake /proc/<pid>/cmdline --1986:1: main Create fake /proc/<pid>/auxv --1986:1: main Initialise the tool part 1 (pre_clo_init) --1986:1:mallocfr deferred_reclaimSuperblock NULL (prev 0x616B8000) owner VALGRIND/core --1986:1:mallocfr newSuperblock at 0x61AB8000 (pszB 4194288) owner VALGRIND/core --1986:1: main Print help and quit, if requested --1986:1: main (main_) Process Valgrind's command line options, setup logging --1986:1: main Print the preamble... ==1986== Memcheck, a memory error detector ==1986== Copyright (C) 2002-2022, and GNU GPL'd, by Julian Seward et al. ==1986== Using Valgrind-3.22.0 and LibVEX; rerun with -h for copyright info ==1986== Command: /usr/bin/last ==1986== --1986:1: main ...finished the preamble --1986:1: main Initialise the tool part 2 (post_clo_init) --1986:1: main Initialise TT/TC --1986-- TT/TC: cache: ignoring --avg-transtab-entry-size=0, using tool provided default 640 --1986-- TT/TC: cache: 32 sectors of 27,597,024 bytes each = 883,104,768 total TC --1986-- TT/TC: table: 32 tables[42588] of C 4,088,448 + H 851,760 bytes each = 158,086,656 total TT --1986-- TT/TC: table: 42588 tt entries each = 1,362,816 total tt entries --1986-- TT/TC: table: 32 htt[65521] of 131,042 bytes each = 4,193,344 total HTT (htt[65521] 65% max occup) --1986:1: main Initialise redirects --1986:1:mallocfr newSuperblock at 0x61F33000 (pszB 1048560) owner VALGRIND/dinfo --1986:1: main Load initial debug info --1986-- di_notify_mmap-0: --1986-- di_notify_mmap-1: 0x8000-0x8afff r-x --1986-- di_notify_mmap-2: /bin/busybox --1986-- di_notify_mmap-3: is_rx_map 1, is_rw_map 0, is_ro_map 0 --1986-- check_elf_and_get_rw_loads: ++*rw_load_count to 1 for /bin/busybox p_vaddr 0x93000 p_offset 536576, p_filesz 2062 --1986-- di_notify_mmap-4: noting details in DebugInfo* at 0x61F33330 --1986-- di_notify_mmap-6: no dinfo loaded /bin/busybox (no rx or no rw mapping) --1986-- di_notify_mmap-0: --1986-- di_notify_mmap-1: 0x93000-0x93fff rw- --1986-- di_notify_mmap-2: /bin/busybox --1986-- di_notify_mmap-3: is_rx_map 0, is_rw_map 1, is_ro_map 0 --1986-- check_elf_and_get_rw_loads: ++*rw_load_count to 1 for /bin/busybox p_vaddr 0x93000 p_offset 536576, p_filesz 2062 --1986-- di_notify_mmap-4: noting details in DebugInfo* at 0x61F33330 --1986-- di_notify_mmap-5: achieved accept state for /bin/busybox ------ start ELF OBJECT ------------------------------------------------------- ------ name = /bin/busybox Un-de-overlapped _DebugInfoMappings: [0] avma 0x8000 size 536576 foff 0 rx -- -- [1] avma 0x93000 size 4096 foff 536576 -- rw -- De-overlapped DebugInfoMappings: [0] avma 0x8000 size 536576 foff 0 rx -- -- [1] avma 0x93000 size 4096 foff 536576 -- rw -- Checking that there are no remaining overlaps. Check successful. ------ Basic facts about the object ------ object: n_oimage 540060 phdr: ioff 52 nent 8 ent_szB 32 shdr: ioff 538940 nent 28 ent_szB 40 rx_map: avma 0x8000 size 536576 foff 0 rw_map: avma 0x93000 size 4096 foff 536576 shdr: string table at 538691 ------ Examining the program headers ------ PT_LOAD[3]: p_vaddr 0x8000 (prev 0x0) PT_LOAD[3]: p_offset 0, p_filesz 534240, perms r-x PT_LOAD[3]: acquired as rx, bias 0x0 PT_LOAD[4]: p_vaddr 0x93000 (prev 0x8000) PT_LOAD[4]: p_offset 536576, p_filesz 2062, perms rw- PT_LOAD[4]: acquired as rw, bias 0x0 No soname found; using (fake) "NONE" ------ Examining the section headers ------ rx: at 0x8000 are mapped foffsets 0 .. 536575 rx: contains these svma regions: svmas 0x8000 .. 0x8a6df with bias 0x0 rw: at 0x93000 are mapped foffsets 536576 .. 540671 rw: contains these svma regions: svmas 0x93000 .. 0x95aaf with bias 0x0 [sec 0] al 0 foff 0 .. 0 svma 0x0 name "" zero sized section "", ignoring [sec 1] rx al 1 foff 308 .. 332 svma 0x8134 name ".interp" [sec 2] rx al 4 foff 336 .. 367 svma 0x8150 name ".note.ABI-tag" [sec 3] rx al 4 foff 368 .. 403 svma 0x8170 name ".note.gnu.build-id" [sec 4] rx al 4 foff 404 .. 2951 svma 0x8194 name ".hash" [sec 5] rx al 4 foff 2952 .. 8903 svma 0x8B88 name ".dynsym" [sec 6] rx al 1 foff 8904 .. 12106 svma 0xA2C8 name ".dynstr" [sec 7] rx al 2 foff 12108 .. 12851 svma 0xAF4C name ".gnu.version" [sec 8] rx al 4 foff 12852 .. 12931 svma 0xB234 name ".gnu.version_r" [sec 9] rx al 4 foff 12932 .. 13019 svma 0xB284 name ".rel.dyn" [sec 10] rx al 4 foff 13020 .. 15891 svma 0xB2DC name ".rel.plt" [sec 11] rx al 4 foff 15892 .. 15901 svma 0xBE14 name ".init" [sec 12] rx al 4 foff 15904 .. 20451 svma 0xBE20 name ".plt" acquiring .plt avma = 0xbe20 [sec 13] rx al 8 foff 20456 .. 425577 svma 0xCFE8 name ".text" acquiring .text svma = 0xcfe8 .. 0x6fe69 acquiring .text avma = 0xcfe8 .. 0x6fe69 acquiring .text bias = 0x0 [sec 14] rx al 4 foff 425580 .. 425585 svma 0x6FE6C name ".fini" [sec 15] rx al 8 foff 425592 .. 533971 svma 0x6FE78 name ".rodata" acquiring .rodata svma = 0x6fe78 .. 0x8a5d3 acquiring .rodata avma = 0x6fe78 .. 0x8a5d3 acquiring .rodata bias = 0x0 [sec 16] rx al 4 foff 533972 .. 534019 svma 0x8A5D4 name ".ARM.extab" acquiring .extab svma = 0x8a5d4 .. 0x8a603 acquiring .extab avma = 0x8a5d4 .. 0x8a603 acquiring .extab bias = 0x0 [sec 17] rx al 4 foff 534020 .. 534235 svma 0x8A604 name ".ARM.exidx" acquiring .exidx svma = 0x8a604 .. 0x8a6db acquiring .exidx avma = 0x8a604 .. 0x8a6db acquiring .exidx bias = 0x0 [sec 18] rx al 4 foff 534236 .. 534239 svma 0x8A6DC name ".eh_frame" acquiring .eh_frame avma = 0x8a6dc [sec 19] rw al 4 foff 536576 .. 536579 svma 0x93000 name ".init_array" [sec 20] rw al 4 foff 536580 .. 536583 svma 0x93004 name ".fini_array" [sec 21] rw al 4 foff 536584 .. 536587 svma 0x93008 name ".jcr" [sec 22] rw al 4 foff 536588 .. 536827 svma 0x9300C name ".dynamic" [sec 23] rw al 4 foff 536828 .. 538299 svma 0x930FC name ".got" acquiring .got avma = 0x930fc [sec 24] rw al 4 foff 538300 .. 538637 svma 0x936BC name ".data" acquiring .data svma = 0x936bc .. 0x9380d acquiring .data avma = 0x936bc .. 0x9380d acquiring .data bias = 0x0 [sec 25] rw al 8 foff 538638 .. 547501 svma 0x93810 name ".bss" acquiring .bss svma = 0x93810 .. 0x95aaf acquiring .bss avma = 0x93810 .. 0x95aaf acquiring .bss bias = 0x0 [sec 26] al 1 foff 538638 .. 538690 svma 0x0 name ".ARM.attributes" [sec 27] al 1 foff 538691 .. 538938 svma 0x0 name ".shstrtab" .dynsym : ioff 2952 .. 8903 .dynstr : ioff 8904 .. 12106 .eh_frame : ioff 534236 .. 534239 --- Reading (ELF, standard) dynamic symbol table (372 entries) --- raw symbol [ 1]: GLO FUN : svma 0x000000be34, sz 0 fdopen ignore -- size=0: fdopen raw symbol [ 2]: GLO FUN : svma 0x000000be40, sz 0 sched_get_priority_min ignore -- size=0: sched_get_priority_min raw symbol [ 3]: GLO FUN : svma 0x000000be50, sz 0 fputs_unlocked ignore -- size=0: fputs_unlocked raw symbol [ 4]: GLO FUN : svma 0x000000be5c, sz 0 strstr ignore -- size=0: strstr raw symbol [ 5]: GLO FUN : svma 0x000000be68, sz 0 gnu_dev_major ignore -- size=0: gnu_dev_major raw symbol [ 6]: GLO FUN : svma 0x000000be74, sz 0 raise ignore -- size=0: raise raw symbol [ 7]: GLO FUN : svma 0x000000be80, sz 0 lutimes ignore -- size=0: lutimes raw symbol [ 8]: GLO FUN : svma 0x000000be90, sz 0 cfmakeraw ignore -- size=0: cfmakeraw raw symbol [ 9]: GLO FUN : svma 0x000000be9c, sz 0 vasprintf ignore -- size=0: vasprintf raw symbol [ 10]: GLO FUN : svma 0x000000bea8, sz 0 sendfile64 ignore -- size=0: sendfile64 raw symbol [ 11]: GLO FUN : svma 0x000000beb4, sz 0 bindresvport ignore -- size=0: bindresvport raw symbol [ 12]: GLO FUN : svma 0x000000bec0, sz 0 gmtime_r ignore -- size=0: gmtime_r raw symbol [ 13]: GLO FUN : svma 0x000000becc, sz 0 log ignore -- size=0: log raw symbol [ 14]: GLO FUN : svma 0x000000bed8, sz 0 strverscmp ignore -- size=0: strverscmp raw symbol [ 15]: GLO FUN : svma 0x000000bee4, sz 0 inet_aton ignore -- size=0: inet_aton raw symbol [ 16]: GLO FUN : svma 0x000000bef0, sz 0 fsync ignore -- size=0: fsync raw symbol [ 17]: GLO FUN : svma 0x000000bf00, sz 0 setbuf ignore -- size=0: setbuf raw symbol [ 18]: GLO FUN : svma 0x000000bf0c, sz 0 __res_init ignore -- size=0: __res_init raw symbol [ 19]: GLO FUN : svma 0x000000bf18, sz 0 strcasestr ignore -- size=0: strcasestr raw symbol [ 20]: GLO FUN : svma 0x000000bf28, sz 0 strcmp ignore -- size=0: strcmp raw symbol [ 21]: GLO FUN : svma 0x000000bf34, sz 0 strtol ignore -- size=0: strtol raw symbol [ 22]: GLO OBJ : svma 0x0000093810, sz 4 __environ rec(d) [ 22]: val 0x0000093810, sz 4 __environ raw symbol [ 23]: GLO FUN : svma 0x000000bf40, sz 0 setsockopt ignore -- size=0: setsockopt raw symbol [ 24]: GLO FUN : svma 0x000000bf4c, sz 0 strcspn ignore -- size=0: strcspn raw symbol [ 25]: GLO FUN : svma 0x000000bf58, sz 0 times ignore -- size=0: times raw symbol [ 26]: GLO FUN : svma 0x000000bf68, sz 0 gnu_dev_makedev ignore -- size=0: gnu_dev_makedev raw symbol [ 27]: GLO FUN : svma 0x000000bf74, sz 0 dprintf ignore -- size=0: dprintf raw symbol [ 28]: GLO FUN : svma 0x000000bf80, sz 0 pause ignore -- size=0: pause raw symbol [ 29]: GLO FUN : svma 0x000000bf8c, sz 0 clearenv ignore -- size=0: clearenv raw symbol [ 30]: GLO FUN : svma 0x000000bf9c, sz 0 printf ignore -- size=0: printf raw symbol [ 31]: GLO FUN : svma 0x000000bfa8, sz 0 hstrerror ignore -- size=0: hstrerror raw symbol [ 32]: GLO FUN : svma 0x000000bfb4, sz 0 gnu_dev_minor ignore -- size=0: gnu_dev_minor raw symbol [ 33]: GLO FUN : svma 0x000000bfc0, sz 0 getusershell ignore -- size=0: getusershell raw symbol [ 34]: GLO FUN : svma 0x000000bfcc, sz 0 regerror ignore -- size=0: regerror raw symbol [ 35]: GLO FUN : svma 0x000000bfd8, sz 0 setrlimit64 ignore -- size=0: setrlimit64 raw symbol [ 36]: GLO FUN : svma 0x000000bfe4, sz 0 read ignore -- size=0: read raw symbol [ 37]: GLO FUN : svma 0x000000bff0, sz 0 tcflush ignore -- size=0: tcflush raw symbol [ 38]: GLO FUN : svma 0x000000bffc, sz 0 mktime ignore -- size=0: mktime raw symbol [ 39]: GLO FUN : svma 0x000000c008, sz 0 longjmp ignore -- size=0: longjmp raw symbol [ 40]: GLO FUN : svma 0x000000c018, sz 0 fflush ignore -- size=0: fflush raw symbol [ 41]: GLO FUN : svma 0x000000c024, sz 0 utmpxname ignore -- size=0: utmpxname raw symbol [ 42]: GLO FUN : svma 0x000000c030, sz 0 if_indextoname ignore -- size=0: if_indextoname raw symbol [ 43]: GLO FUN : svma 0x000000c03c, sz 0 getuid ignore -- size=0: getuid raw symbol [ 44]: GLO FUN : svma 0x000000c04c, sz 0 sigprocmask ignore -- size=0: sigprocmask raw symbol [ 45]: GLO FUN : svma 0x000000c058, sz 0 _setjmp ignore -- size=0: _setjmp raw symbol [ 46]: GLO FUN : svma 0x000000c064, sz 0 memmove ignore -- size=0: memmove raw symbol [ 47]: GLO FUN : svma 0x000000c070, sz 0 strchrnul ignore -- size=0: strchrnul raw symbol [ 48]: GLO FUN : svma 0x000000c080, sz 0 free ignore -- size=0: free raw symbol [ 49]: GLO FUN : svma 0x000000c08c, sz 0 pmap_set ignore -- size=0: pmap_set raw symbol [ 50]: GLO FUN : svma 0x000000c098, sz 0 nanosleep ignore -- size=0: nanosleep raw symbol [ 51]: GLO FUN : svma 0x000000c0a4, sz 0 getnetbyname ignore -- size=0: getnetbyname raw symbol [ 52]: GLO FUN : svma 0x000000c0b0, sz 0 ferror ignore -- size=0: ferror raw symbol [ 53]: GLO FUN : svma 0x000000c0bc, sz 0 inet_pton ignore -- size=0: inet_pton raw symbol [ 54]: GLO FUN : svma 0x000000c0c8, sz 0 _exit ignore -- size=0: _exit raw symbol [ 55]: GLO FUN : svma 0x000000c0d4, sz 0 __res_state ignore -- size=0: __res_state raw symbol [ 56]: GLO FUN : svma 0x000000c0e0, sz 0 pututxline ignore -- size=0: pututxline raw symbol [ 57]: GLO FUN : svma 0x000000c0f0, sz 0 memcpy ignore -- size=0: memcpy raw symbol [ 58]: GLO FUN : svma 0x000000c0fc, sz 0 tcsendbreak ignore -- size=0: tcsendbreak raw symbol [ 59]: GLO FUN : svma 0x000000c108, sz 0 pivot_root ignore -- size=0: pivot_root raw symbol [ 60]: GLO FUN : svma 0x000000c114, sz 0 execvp ignore -- size=0: execvp raw symbol [ 61]: GLO FUN : svma 0x000000c120, sz 0 execlp ignore -- size=0: execlp raw symbol [ 62]: GLO FUN : svma 0x000000c12c, sz 0 mmap64 ignore -- size=0: mmap64 raw symbol [ 63]: GLO FUN : svma 0x000000c138, sz 0 shmget ignore -- size=0: shmget raw symbol [ 64]: GLO FUN : svma 0x000000c144, sz 0 signal ignore -- size=0: signal raw symbol [ 65]: GLO FUN : svma 0x000000c154, sz 0 time ignore -- size=0: time raw symbol [ 66]: GLO FUN : svma 0x000000c160, sz 0 rmdir ignore -- size=0: rmdir raw symbol [ 67]: GLO FUN : svma 0x000000c16c, sz 0 gethostid ignore -- size=0: gethostid raw symbol [ 68]: GLO FUN : svma 0x000000c178, sz 0 tcsetpgrp ignore -- size=0: tcsetpgrp raw symbol [ 69]: GLO FUN : svma 0x000000c184, sz 0 sendmsg ignore -- size=0: sendmsg raw symbol [ 70]: GLO FUN : svma 0x000000c190, sz 0 pow ignore -- size=0: pow raw symbol [ 71]: GLO FUN : svma 0x000000c19c, sz 0 ftruncate64 ignore -- size=0: ftruncate64 raw symbol [ 72]: GLO FUN : svma 0x000000c1a8, sz 0 memcmp ignore -- size=0: memcmp raw symbol [ 73]: GLO FUN : svma 0x000000c1b4, sz 0 inet_ntoa ignore -- size=0: inet_ntoa raw symbol [ 74]: GLO FUN : svma 0x000000c1c0, sz 0 select ignore -- size=0: select raw symbol [ 75]: GLO FUN : svma 0x000000c1cc, sz 0 swapon ignore -- size=0: swapon raw symbol [ 76]: GLO FUN : svma 0x000000c1dc, sz 0 sleep ignore -- size=0: sleep raw symbol [ 77]: GLO FUN : svma 0x000000c1e8, sz 0 stpcpy ignore -- size=0: stpcpy raw symbol [ 78]: GLO FUN : svma 0x000000c1f4, sz 0 getc_unlocked ignore -- size=0: getc_unlocked raw symbol [ 79]: GLO FUN : svma 0x000000c200, sz 0 uname ignore -- size=0: uname raw symbol [ 80]: GLO FUN : svma 0x000000c20c, sz 0 ctime ignore -- size=0: ctime raw symbol [ 81]: GLO OBJ : svma 0x0000093814, sz 4 optind rec(d) [ 81]: val 0x0000093814, sz 4 optind raw symbol [ 82]: GLO FUN : svma 0x000000c218, sz 0 gethostbyaddr ignore -- size=0: gethostbyaddr raw symbol [ 83]: GLO FUN : svma 0x000000c224, sz 0 recvfrom ignore -- size=0: recvfrom raw symbol [ 84]: GLO FUN : svma 0x000000c230, sz 0 strdup ignore -- size=0: strdup raw symbol [ 85]: GLO FUN : svma 0x000000c23c, sz 0 setutxent ignore -- size=0: setutxent raw symbol [ 86]: GLO FUN : svma 0x000000c248, sz 0 syncfs ignore -- size=0: syncfs raw symbol [ 87]: GLO FUN : svma 0x000000c254, sz 0 cfgetispeed ignore -- size=0: cfgetispeed raw symbol [ 88]: GLO FUN : svma 0x000000c264, sz 0 alarm ignore -- size=0: alarm raw symbol [ 89]: GLO FUN : svma 0x000000c270, sz 0 getrpcbyname ignore -- size=0: getrpcbyname raw symbol [ 90]: GLO FUN : svma 0x000000c280, sz 0 sysconf ignore -- size=0: sysconf raw symbol [ 91]: GLO FUN : svma 0x000000c290, sz 0 unlink ignore -- size=0: unlink raw symbol [ 92]: GLO FUN : svma 0x000000c29c, sz 0 dup2 ignore -- size=0: dup2 raw symbol [ 93]: GLO FUN : svma 0x000000c2a8, sz 0 reboot ignore -- size=0: reboot raw symbol [ 94]: GLO FUN : svma 0x000000c2b4, sz 0 getrlimit64 ignore -- size=0: getrlimit64 raw symbol [ 95]: GLO FUN : svma 0x000000c2c0, sz 0 realloc ignore -- size=0: realloc raw symbol [ 96]: GLO FUN : svma 0x000000c2cc, sz 0 killpg ignore -- size=0: killpg raw symbol [ 97]: GLO FUN : svma 0x000000c2d8, sz 0 strptime ignore -- size=0: strptime raw symbol [ 98]: GLO FUN : svma 0x000000c2e4, sz 0 dup ignore -- size=0: dup raw symbol [ 99]: GLO FUN : svma 0x000000c2f0, sz 0 socketpair ignore -- size=0: socketpair raw symbol [ 100]: GLO FUN : svma 0x000000c2fc, sz 0 atoll ignore -- size=0: atoll raw symbol [ 101]: GLO FUN : svma 0x000000c308, sz 0 getpriority ignore -- size=0: getpriority raw symbol [ 102]: GLO FUN : svma 0x000000c314, sz 0 getnetbyaddr ignore -- size=0: getnetbyaddr raw symbol [ 103]: GLO FUN : svma 0x000000c320, sz 0 regexec ignore -- size=0: regexec raw symbol [ 104]: GLO FUN : svma 0x000000c32c, sz 0 localtime_r ignore -- size=0: localtime_r raw symbol [ 105]: GLO FUN : svma 0x000000c338, sz 0 wait ignore -- size=0: wait raw symbol [ 106]: GLO FUN : svma 0x000000c344, sz 0 getlogin_r ignore -- size=0: getlogin_r raw symbol [ 107]: GLO FUN : svma 0x000000c350, sz 0 shmat ignore -- size=0: shmat raw symbol [ 108]: GLO FUN : svma 0x000000c35c, sz 0 chdir ignore -- size=0: chdir raw symbol [ 109]: GLO FUN : svma 0x000000c368, sz 0 strcasecmp ignore -- size=0: strcasecmp raw symbol [ 110]: GLO FUN : svma 0x000000c374, sz 0 getpgrp ignore -- size=0: getpgrp raw symbol [ 111]: GLO FUN : svma 0x000000c380, sz 0 unlockpt ignore -- size=0: unlockpt raw symbol [ 112]: GLO FUN : svma 0x000000c38c, sz 0 geteuid ignore -- size=0: geteuid raw symbol [ 113]: GLO FUN : svma 0x000000c398, sz 0 strsignal ignore -- size=0: strsignal raw symbol [ 114]: GLO FUN : svma 0x000000c3a4, sz 0 tzset ignore -- size=0: tzset raw symbol [ 115]: GLO FUN : svma 0x000000c3b0, sz 0 poll ignore -- size=0: poll raw symbol [ 116]: GLO FUN : svma 0x000000c3bc, sz 0 accept ignore -- size=0: accept raw symbol [ 117]: GLO FUN : svma 0x000000c3c8, sz 0 setgroups ignore -- size=0: setgroups raw symbol [ 118]: GLO FUN : svma 0x000000c3d8, sz 0 cfsetospeed ignore -- size=0: cfsetospeed raw symbol [ 119]: GLO FUN : svma 0x000000c3e4, sz 0 semop ignore -- size=0: semop raw symbol [ 120]: GLO FUN : svma 0x000000c3f0, sz 0 seteuid ignore -- size=0: seteuid raw symbol [ 121]: GLO FUN : svma 0x000000c400, sz 0 __fxstat64 ignore -- size=0: __fxstat64 raw symbol [ 122]: GLO FUN : svma 0x000000c40c, sz 0 readlink ignore -- size=0: readlink raw symbol [ 123]: GLO FUN : svma 0x000000c418, sz 0 getegid ignore -- size=0: getegid raw symbol [ 124]: GLO FUN : svma 0x000000c428, sz 0 sigaction ignore -- size=0: sigaction raw symbol [ 125]: GLO OBJ : svma 0x0000093818, sz 4 stderr rec(d) [ 125]: val 0x0000093818, sz 4 stderr raw symbol [ 126]: GLO FUN : svma 0x000000c438, sz 0 fwrite ignore -- size=0: fwrite raw symbol [ 127]: GLO FUN : svma 0x000000c444, sz 0 strcat ignore -- size=0: strcat raw symbol [ 128]: GLO FUN : svma 0x000000c450, sz 0 getsockopt ignore -- size=0: getsockopt raw symbol [ 129]: GLO FUN : svma 0x000000c460, sz 0 ioctl ignore -- size=0: ioctl raw symbol [ 130]: GLO FUN : svma 0x000000c46c, sz 0 sched_getscheduler ignore -- size=0: sched_getscheduler raw symbol [ 131]: GLO FUN : svma 0x000000c478, sz 0 lseek64 ignore -- size=0: lseek64 raw symbol [ 132]: GLO FUN : svma 0x000000c484, sz 0 regfree ignore -- size=0: regfree raw symbol [ 133]: GLO FUN : svma 0x000000c490, sz 0 strtoll ignore -- size=0: strtoll raw symbol [ 134]: GLO FUN : svma 0x000000c49c, sz 0 usleep ignore -- size=0: usleep raw symbol [ 135]: GLO FUN : svma 0x000000c4a8, sz 0 waitpid ignore -- size=0: waitpid raw symbol [ 136]: GLO FUN : svma 0x000000c4b4, sz 0 hasmntopt ignore -- size=0: hasmntopt raw symbol [ 137]: GLO FUN : svma 0x000000c4c4, sz 0 tcsetattr ignore -- size=0: tcsetattr raw symbol [ 138]: GLO FUN : svma 0x000000c4d0, sz 0 strcpy ignore -- size=0: strcpy raw symbol [ 139]: GLO FUN : svma 0x000000c4dc, sz 0 chroot ignore -- size=0: chroot raw symbol [ 140]: GLO FUN : svma 0x000000c4e8, sz 0 gettimeofday ignore -- size=0: gettimeofday raw symbol [ 141]: GLO FUN : svma 0x000000c4f4, sz 0 fread ignore -- size=0: fread raw symbol [ 142]: GLO FUN : svma 0x000000c500, sz 0 pread64 ignore -- size=0: pread64 raw symbol [ 143]: GLO FUN : svma 0x000000c50c, sz 0 sched_yield ignore -- size=0: sched_yield raw symbol [ 144]: GLO FUN : svma 0x000000c518, sz 0 ptsname_r ignore -- size=0: ptsname_r raw symbol [ 145]: GLO FUN : svma 0x000000c524, sz 0 shmctl ignore -- size=0: shmctl raw symbol [ 146]: GLO FUN : svma 0x000000c530, sz 0 creat64 ignore -- size=0: creat64 raw symbol [ 147]: GLO FUN : svma 0x000000c53c, sz 0 getmntent ignore -- size=0: getmntent raw symbol [ 148]: GLO FUN : svma 0x000000c548, sz 0 opendir ignore -- size=0: opendir raw symbol [ 149]: GLO FUN : svma 0x000000c554, sz 0 umount2 ignore -- size=0: umount2 raw symbol [ 150]: GLO FUN : svma 0x000000c560, sz 0 fnmatch ignore -- size=0: fnmatch raw symbol [ 151]: GLO FUN : svma 0x000000c56c, sz 0 open64 ignore -- size=0: open64 raw symbol [ 152]: GLO FUN : svma 0x000000c578, sz 0 sched_get_priority_max ignore -- size=0: sched_get_priority_max raw symbol [ 153]: GLO FUN : svma 0x000000c584, sz 0 getenv ignore -- size=0: getenv raw symbol [ 154]: GLO FUN : svma 0x000000c590, sz 0 setpriority ignore -- size=0: setpriority raw symbol [ 155]: GLO FUN : svma 0x000000c59c, sz 0 mkstemp64 ignore -- size=0: mkstemp64 raw symbol [ 156]: WEA FUN : svma 0x0000000000, sz 0 __gnu_Unwind_Find_exidx ignore -- size=0: __gnu_Unwind_Find_exidx raw symbol [ 157]: GLO FUN : svma 0x000000c5b8, sz 0 puts ignore -- size=0: puts raw symbol [ 158]: GLO FUN : svma 0x000000c5c4, sz 0 setgid ignore -- size=0: setgid raw symbol [ 159]: GLO FUN : svma 0x000000c5d0, sz 0 sysinfo ignore -- size=0: sysinfo raw symbol [ 160]: GLO FUN : svma 0x000000c5dc, sz 0 malloc ignore -- size=0: malloc raw symbol [ 161]: WEA NOT : svma 0x0000000000, sz 0 __cxa_begin_cleanup raw symbol [ 162]: GLO FUN : svma 0x000000c5f4, sz 0 settimeofday ignore -- size=0: settimeofday raw symbol [ 163]: GLO FUN : svma 0x000000c600, sz 0 sigaddset ignore -- size=0: sigaddset raw symbol [ 164]: GLO FUN : svma 0x000000c60c, sz 0 __libc_start_main ignore -- size=0: __libc_start_main raw symbol [ 165]: GLO FUN : svma 0x000000c61c, sz 0 strerror ignore -- size=0: strerror raw symbol [ 166]: GLO FUN : svma 0x000000c628, sz 0 system ignore -- size=0: system raw symbol [ 167]: GLO FUN : svma 0x000000c634, sz 0 strftime ignore -- size=0: strftime raw symbol [ 168]: GLO FUN : svma 0x000000c640, sz 0 tcdrain ignore -- size=0: tcdrain raw symbol [ 169]: GLO FUN : svma 0x000000c64c, sz 0 __h_errno_location ignore -- size=0: __h_errno_location raw symbol [ 170]: GLO FUN : svma 0x000000c658, sz 0 adjtimex ignore -- size=0: adjtimex raw symbol [ 171]: GLO FUN : svma 0x000000c664, sz 0 localtime ignore -- size=0: localtime raw symbol [ 172]: GLO FUN : svma 0x000000c670, sz 0 strsep ignore -- size=0: strsep raw symbol [ 173]: GLO FUN : svma 0x000000c67c, sz 0 closelog ignore -- size=0: closelog raw symbol [ 174]: GLO FUN : svma 0x000000c688, sz 0 sethostname ignore -- size=0: sethostname raw symbol [ 175]: GLO FUN : svma 0x000000c694, sz 0 dirname ignore -- size=0: dirname raw symbol [ 176]: WEA NOT : svma 0x0000000000, sz 0 __gmon_start__ raw symbol [ 177]: GLO FUN : svma 0x000000c6b0, sz 0 freopen64 ignore -- size=0: freopen64 raw symbol [ 178]: GLO FUN : svma 0x000000c6bc, sz 0 mempcpy ignore -- size=0: mempcpy raw symbol [ 179]: GLO FUN : svma 0x000000c6c8, sz 0 rename ignore -- size=0: rename raw symbol [ 180]: GLO FUN : svma 0x000000c6d4, sz 0 getopt_long ignore -- size=0: getopt_long raw symbol [ 181]: GLO FUN : svma 0x000000c6e4, sz 0 kill ignore -- size=0: kill raw symbol [ 182]: GLO FUN : svma 0x000000c6f0, sz 0 getcwd ignore -- size=0: getcwd raw symbol [ 183]: GLO FUN : svma 0x000000c6fc, sz 0 getpid ignore -- size=0: getpid raw symbol [ 184]: GLO FUN : svma 0x000000c708, sz 0 exit ignore -- size=0: exit raw symbol [ 185]: GLO FUN : svma 0x000000c714, sz 0 syscall ignore -- size=0: syscall raw symbol [ 186]: GLO FUN : svma 0x000000c720, sz 0 sin ignore -- size=0: sin raw symbol [ 187]: GLO FUN : svma 0x000000c72c, sz 0 feof ignore -- size=0: feof raw symbol [ 188]: GLO FUN : svma 0x000000c738, sz 0 flock ignore -- size=0: flock raw symbol [ 189]: WEA NOT : svma 0x0000000000, sz 0 __cxa_type_match raw symbol [ 190]: GLO FUN : svma 0x000000c750, sz 0 strtoul ignore -- size=0: strtoul raw symbol [ 191]: GLO FUN : svma 0x000000c75c, sz 0 tcgetpgrp ignore -- size=0: tcgetpgrp raw symbol [ 192]: GLO FUN : svma 0x000000c76c, sz 0 strlen ignore -- size=0: strlen raw symbol [ 193]: GLO FUN : svma 0x000000c778, sz 0 inotify_init ignore -- size=0: inotify_init raw symbol [ 194]: GLO FUN : svma 0x000000c784, sz 0 getchar_unlocked ignore -- size=0: getchar_unlocked raw symbol [ 195]: GLO FUN : svma 0x000000c790, sz 0 setsid ignore -- size=0: setsid raw symbol [ 196]: GLO FUN : svma 0x000000c79c, sz 0 vprintf ignore -- size=0: vprintf raw symbol [ 197]: GLO FUN : svma 0x000000c7a8, sz 0 setpgrp ignore -- size=0: setpgrp raw symbol [ 198]: GLO FUN : svma 0x000000c7b4, sz 0 sched_getparam ignore -- size=0: sched_getparam raw symbol [ 199]: GLO FUN : svma 0x000000c7c4, sz 0 strchr ignore -- size=0: strchr raw symbol [ 200]: GLO FUN : svma 0x000000c7d0, sz 0 srand ignore -- size=0: srand raw symbol [ 201]: GLO FUN : svma 0x000000c7e0, sz 0 setenv ignore -- size=0: setenv raw symbol [ 202]: GLO FUN : svma 0x000000c7ec, sz 0 memrchr ignore -- size=0: memrchr raw symbol [ 203]: GLO FUN : svma 0x000000c7f8, sz 0 ttyname_r ignore -- size=0: ttyname_r raw symbol [ 204]: GLO FUN : svma 0x000000c804, sz 0 fchown ignore -- size=0: fchown raw symbol [ 205]: GLO FUN : svma 0x000000c810, sz 0 execve ignore -- size=0: execve raw symbol [ 206]: GLO FUN : svma 0x000000c81c, sz 0 getopt ignore -- size=0: getopt raw symbol [ 207]: GLO FUN : svma 0x000000c828, sz 0 fprintf ignore -- size=0: fprintf raw symbol [ 208]: GLO FUN : svma 0x000000c834, sz 0 getpagesize ignore -- size=0: getpagesize raw symbol [ 209]: GLO FUN : svma 0x000000c840, sz 0 cfsetispeed ignore -- size=0: cfsetispeed raw symbol [ 210]: GLO FUN : svma 0x000000c850, sz 0 chown ignore -- size=0: chown raw symbol [ 211]: GLO OBJ : svma 0x0000093820, sz 4 stdin rec(d) [ 211]: val 0x0000093820, sz 4 stdin raw symbol [ 212]: GLO FUN : svma 0x000000c85c, sz 0 ungetc ignore -- size=0: ungetc raw symbol [ 213]: GLO FUN : svma 0x000000c86c, sz 0 fcntl ignore -- size=0: fcntl raw symbol [ 214]: GLO FUN : svma 0x000000c878, sz 0 setlinebuf ignore -- size=0: setlinebuf raw symbol [ 215]: GLO FUN : svma 0x000000c884, sz 0 grantpt ignore -- size=0: grantpt raw symbol [ 216]: GLO FUN : svma 0x000000c890, sz 0 execv ignore -- size=0: execv raw symbol [ 217]: GLO FUN : svma 0x000000c89c, sz 0 sqrt ignore -- size=0: sqrt raw symbol [ 218]: WEA OBJ : svma 0x0000093828, sz 4 timezone rec(d) [ 218]: val 0x0000093828, sz 4 timezone raw symbol [ 219]: GLO FUN : svma 0x000000c8a8, sz 0 cfgetospeed ignore -- size=0: cfgetospeed raw symbol [ 220]: GLO FUN : svma 0x000000c8b4, sz 0 sigfillset ignore -- size=0: sigfillset raw symbol [ 221]: GLO FUN : svma 0x000000c8c0, sz 0 inotify_add_watch ignore -- size=0: inotify_add_watch raw symbol [ 222]: GLO FUN : svma 0x000000c8cc, sz 0 __errno_location ignore -- size=0: __errno_location raw symbol [ 223]: GLO FUN : svma 0x000000c8dc, sz 0 strncasecmp ignore -- size=0: strncasecmp raw symbol [ 224]: GLO FUN : svma 0x000000c8e8, sz 0 getservbyname ignore -- size=0: getservbyname raw symbol [ 225]: GLO FUN : svma 0x000000c8f4, sz 0 klogctl ignore -- size=0: klogctl raw symbol [ 226]: GLO FUN : svma 0x000000c904, sz 0 snprintf ignore -- size=0: snprintf raw symbol [ 227]: GLO FUN : svma 0x000000c914, sz 0 __cxa_atexit ignore -- size=0: __cxa_atexit raw symbol [ 228]: GLO FUN : svma 0x000000c920, sz 0 mkdir ignore -- size=0: mkdir raw symbol [ 229]: GLO FUN : svma 0x000000c92c, sz 0 semget ignore -- size=0: semget raw symbol [ 230]: GLO FUN : svma 0x000000c938, sz 0 bind ignore -- size=0: bind raw symbol [ 231]: GLO FUN : svma 0x000000c944, sz 0 getservbyport ignore -- size=0: getservbyport raw symbol [ 232]: GLO FUN : svma 0x000000c950, sz 0 getgid ignore -- size=0: getgid raw symbol [ 233]: GLO FUN : svma 0x000000c960, sz 0 memset ignore -- size=0: memset raw symbol [ 234]: GLO FUN : svma 0x000000c96c, sz 0 getmntent_r ignore -- size=0: getmntent_r raw symbol [ 235]: GLO FUN : svma 0x000000c978, sz 0 bsearch ignore -- size=0: bsearch raw symbol [ 236]: GLO FUN : svma 0x000000c984, sz 0 sigtimedwait ignore -- size=0: sigtimedwait raw symbol [ 237]: GLO FUN : svma 0x000000c990, sz 0 utimes ignore -- size=0: utimes raw symbol [ 238]: GLO FUN : svma 0x000000c9a0, sz 0 strncpy ignore -- size=0: strncpy raw symbol [ 239]: GLO FUN : svma 0x000000c9ac, sz 0 fscanf ignore -- size=0: fscanf raw symbol [ 240]: GLO FUN : svma 0x000000c9b8, sz 0 mallopt ignore -- size=0: mallopt raw symbol [ 241]: GLO FUN : svma 0x000000c9c4, sz 0 sigsuspend ignore -- size=0: sigsuspend raw symbol [ 242]: GLO FUN : svma 0x000000c9d0, sz 0 strtoull ignore -- size=0: strtoull raw symbol [ 243]: GLO FUN : svma 0x000000c9dc, sz 0 gmtime ignore -- size=0: gmtime raw symbol [ 244]: GLO FUN : svma 0x000000c9e8, sz 0 wait3 ignore -- size=0: wait3 raw symbol [ 245]: GLO FUN : svma 0x000000c9f8, sz 0 strtod ignore -- size=0: strtod raw symbol [ 246]: GLO FUN : svma 0x000000ca04, sz 0 link ignore -- size=0: link raw symbol [ 247]: GLO FUN : svma 0x000000ca10, sz 0 write ignore -- size=0: write raw symbol [ 248]: GLO FUN : svma 0x000000ca1c, sz 0 sigdelset ignore -- size=0: sigdelset raw symbol [ 249]: GLO FUN : svma 0x000000ca28, sz 0 fileno ignore -- size=0: fileno raw symbol [ 250]: GLO FUN : svma 0x000000ca34, sz 0 getopt_long_only ignore -- size=0: getopt_long_only raw symbol [ 251]: GLO FUN : svma 0x000000ca40, sz 0 ether_aton_r ignore -- size=0: ether_aton_r raw symbol [ 252]: GLO FUN : svma 0x000000ca4c, sz 0 shmdt ignore -- size=0: shmdt raw symbol [ 253]: GLO FUN : svma 0x000000ca58, sz 0 vfork ignore -- size=0: vfork raw symbol [ 254]: GLO FUN : svma 0x000000ca64, sz 0 memchr ignore -- size=0: memchr raw symbol [ 255]: GLO FUN : svma 0x000000ca70, sz 0 vsprintf ignore -- size=0: vsprintf raw symbol [ 256]: GLO FUN : svma 0x000000ca7c, sz 0 sched_setaffinity ignore -- size=0: sched_setaffinity raw symbol [ 257]: GLO FUN : svma 0x000000ca88, sz 0 access ignore -- size=0: access raw symbol [ 258]: GLO FUN : svma 0x000000ca94, sz 0 rand ignore -- size=0: rand raw symbol [ 259]: GLO FUN : svma 0x000000caa0, sz 0 setegid ignore -- size=0: setegid raw symbol [ 260]: GLO OBJ : svma 0x000009382c, sz 4 stdout rec(d) [ 260]: val 0x000009382c, sz 4 stdout raw symbol [ 261]: GLO FUN : svma 0x000000cab0, sz 0 fclose ignore -- size=0: fclose raw symbol [ 262]: GLO FUN : svma 0x000000cabc, sz 0 getsid ignore -- size=0: getsid raw symbol [ 263]: GLO FUN : svma 0x000000cac8, sz 0 strnlen ignore -- size=0: strnlen raw symbol [ 264]: GLO FUN : svma 0x000000cad4, sz 0 pipe ignore -- size=0: pipe raw symbol [ 265]: GLO FUN : svma 0x000000cae0, sz 0 pmap_unset ignore -- size=0: pmap_unset raw symbol [ 266]: GLO FUN : svma 0x000000caec, sz 0 fseeko64 ignore -- size=0: fseeko64 raw symbol [ 267]: GLO FUN : svma 0x000000caf8, sz 0 endmntent ignore -- size=0: endmntent raw symbol [ 268]: GLO FUN : svma 0x000000cb04, sz 0 ether_ntoa ignore -- size=0: ether_ntoa raw symbol [ 269]: GLO FUN : svma 0x000000cb10, sz 0 munmap ignore -- size=0: munmap raw symbol [ 270]: GLO FUN : svma 0x000000cb1c, sz 0 strtok ignore -- size=0: strtok raw symbol [ 271]: GLO FUN : svma 0x000000cb28, sz 0 semctl ignore -- size=0: semctl raw symbol [ 272]: GLO FUN : svma 0x000000cb34, sz 0 sendto ignore -- size=0: sendto raw symbol [ 273]: GLO FUN : svma 0x000000cb40, sz 0 shutdown ignore -- size=0: shutdown raw symbol [ 274]: GLO FUN : svma 0x000000cb4c, sz 0 endutxent ignore -- size=0: endutxent raw symbol [ 275]: GLO FUN : svma 0x000000cb58, sz 0 sigemptyset ignore -- size=0: sigemptyset raw symbol [ 276]: GLO FUN : svma 0x000000cb64, sz 0 popen ignore -- size=0: popen raw symbol [ 277]: GLO FUN : svma 0x000000cb70, sz 0 fork ignore -- size=0: fork raw symbol [ 278]: GLO FUN : svma 0x000000cb80, sz 0 putenv ignore -- size=0: putenv raw symbol [ 279]: GLO FUN : svma 0x000000cb8c, sz 0 stime ignore -- size=0: stime raw symbol [ 280]: GLO FUN : svma 0x000000cb98, sz 0 getnameinfo ignore -- size=0: getnameinfo raw symbol [ 281]: GLO FUN : svma 0x000000cba4, sz 0 execl ignore -- size=0: execl raw symbol [ 282]: GLO FUN : svma 0x000000cbb0, sz 0 strrchr ignore -- size=0: strrchr raw symbol [ 283]: GLO FUN : svma 0x000000cbbc, sz 0 listen ignore -- size=0: listen raw symbol [ 284]: GLO FUN : svma 0x000000cbc8, sz 0 vfprintf ignore -- size=0: vfprintf raw symbol [ 285]: GLO FUN : svma 0x000000cbd4, sz 0 delete_module ignore -- size=0: delete_module raw symbol [ 286]: GLO FUN : svma 0x000000cbe0, sz 0 statfs64 ignore -- size=0: statfs64 raw symbol [ 287]: GLO FUN : svma 0x000000cbec, sz 0 __sigsetjmp ignore -- size=0: __sigsetjmp raw symbol [ 288]: GLO FUN : svma 0x000000cbf8, sz 0 lchown ignore -- size=0: lchown raw symbol [ 289]: GLO FUN : svma 0x000000cc04, sz 0 syslog ignore -- size=0: syslog raw symbol [ 290]: GLO FUN : svma 0x000000cc10, sz 0 setresuid ignore -- size=0: setresuid raw symbol [ 291]: GLO FUN : svma 0x000000cc1c, sz 0 symlink ignore -- size=0: symlink raw symbol [ 292]: GLO FUN : svma 0x000000cc28, sz 0 updwtmpx ignore -- size=0: updwtmpx raw symbol [ 293]: GLO FUN : svma 0x000000cc34, sz 0 setuid ignore -- size=0: setuid raw symbol [ 294]: WEA NOT : svma 0x0000000000, sz 0 _Jv_RegisterClasses raw symbol [ 295]: GLO FUN : svma 0x000000cc40, sz 0 sscanf ignore -- size=0: sscanf raw symbol [ 296]: GLO FUN : svma 0x000000cc4c, sz 0 setpgid ignore -- size=0: setpgid raw symbol [ 297]: GLO FUN : svma 0x000000cc58, sz 0 clearerr ignore -- size=0: clearerr raw symbol [ 298]: GLO FUN : svma 0x000000cc68, sz 0 sprintf ignore -- size=0: sprintf raw symbol [ 299]: GLO FUN : svma 0x000000cc74, sz 0 readdir64 ignore -- size=0: readdir64 raw symbol [ 300]: GLO FUN : svma 0x000000cc80, sz 0 mkdtemp ignore -- size=0: mkdtemp raw symbol [ 301]: GLO FUN : svma 0x000000cc8c, sz 0 openlog ignore -- size=0: openlog raw symbol [ 302]: GLO FUN : svma 0x000000cc98, sz 0 regcomp ignore -- size=0: regcomp raw symbol [ 303]: GLO FUN : svma 0x000000cca4, sz 0 getgroups ignore -- size=0: getgroups raw symbol [ 304]: GLO FUN : svma 0x000000ccb0, sz 0 exp ignore -- size=0: exp raw symbol [ 305]: GLO FUN : svma 0x000000ccbc, sz 0 init_module ignore -- size=0: init_module raw symbol [ 306]: GLO FUN : svma 0x000000ccc8, sz 0 getsockname ignore -- size=0: getsockname raw symbol [ 307]: GLO FUN : svma 0x000000ccd4, sz 0 vsnprintf ignore -- size=0: vsnprintf raw symbol [ 308]: GLO FUN : svma 0x000000cce0, sz 0 getppid ignore -- size=0: getppid raw symbol [ 309]: GLO FUN : svma 0x000000ccf0, sz 0 atoi ignore -- size=0: atoi raw symbol [ 310]: GLO FUN : svma 0x000000ccfc, sz 0 recvmsg ignore -- size=0: recvmsg raw symbol [ 311]: GLO FUN : svma 0x000000cd0c, sz 0 fopen64 ignore -- size=0: fopen64 raw symbol [ 312]: GLO FUN : svma 0x000000cd1c, sz 0 qsort ignore -- size=0: qsort raw symbol [ 313]: GLO FUN : svma 0x000000cd28, sz 0 getpeername ignore -- size=0: getpeername raw symbol [ 314]: GLO OBJ : svma 0x0000093830, sz 4 opterr rec(d) [ 314]: val 0x0000093830, sz 4 opterr raw symbol [ 315]: GLO FUN : svma 0x000000cd34, sz 0 strpbrk ignore -- size=0: strpbrk raw symbol [ 316]: GLO FUN : svma 0x000000cd40, sz 0 freeaddrinfo ignore -- size=0: freeaddrinfo raw symbol [ 317]: GLO FUN : svma 0x000000cd4c, sz 0 getaddrinfo ignore -- size=0: getaddrinfo raw symbol [ 318]: GLO FUN : svma 0x000000cd58, sz 0 acct ignore -- size=0: acct raw symbol [ 319]: GLO FUN : svma 0x000000cd68, sz 0 inet_ntop ignore -- size=0: inet_ntop raw symbol [ 320]: GLO FUN : svma 0x000000cd74, sz 0 fgets_unlocked ignore -- size=0: fgets_unlocked raw symbol [ 321]: GLO FUN : svma 0x000000cd80, sz 0 socket ignore -- size=0: socket raw symbol [ 322]: GLO FUN : svma 0x000000cd8c, sz 0 sched_getaffinity ignore -- size=0: sched_getaffinity raw symbol [ 323]: GLO FUN : svma 0x000000cd98, sz 0 setmntent ignore -- size=0: setmntent raw symbol [ 324]: GLO FUN : svma 0x000000cda4, sz 0 cfsetspeed ignore -- size=0: cfsetspeed raw symbol [ 325]: GLO FUN : svma 0x000000cdb0, sz 0 atof ignore -- size=0: atof raw symbol [ 326]: GLO FUN : svma 0x000000cdbc, sz 0 inet_addr ignore -- size=0: inet_addr raw symbol [ 327]: GLO FUN : svma 0x000000cdc8, sz 0 __cmsg_nxthdr ignore -- size=0: __cmsg_nxthdr raw symbol [ 328]: GLO FUN : svma 0x000000cdd8, sz 0 sync ignore -- size=0: sync raw symbol [ 329]: WEA OBJ : svma 0x0000093810, sz 4 environ rec(d) [ 329]: val 0x0000093810, sz 4 environ raw symbol [ 330]: GLO OBJ : svma 0x0000093828, sz 4 __timezone rec(d) [ 330]: val 0x0000093828, sz 4 __timezone raw symbol [ 331]: GLO FUN : svma 0x000000cde4, sz 0 getline ignore -- size=0: getline raw symbol [ 332]: GLO FUN : svma 0x000000cdf0, sz 0 if_nametoindex ignore -- size=0: if_nametoindex raw symbol [ 333]: GLO FUN : svma 0x000000ce00, sz 0 umask ignore -- size=0: umask raw symbol [ 334]: GLO FUN : svma 0x000000ce0c, sz 0 swapoff ignore -- size=0: swapoff raw symbol [ 335]: GLO FUN : svma 0x000000ce18, sz 0 chmod ignore -- size=0: chmod raw symbol [ 336]: GLO OBJ : svma 0x0000093838, sz 4 optarg rec(d) [ 336]: val 0x0000093838, sz 4 optarg raw symbol [ 337]: GLO FUN : svma 0x000000ce24, sz 0 gethostbyname ignore -- size=0: gethostbyname raw symbol [ 338]: GLO FUN : svma 0x000000ce34, sz 0 __xstat64 ignore -- size=0: __xstat64 raw symbol [ 339]: GLO FUN : svma 0x000000ce40, sz 0 isatty ignore -- size=0: isatty raw symbol [ 340]: GLO FUN : svma 0x000000ce4c, sz 0 __xmknod ignore -- size=0: __xmknod raw symbol [ 341]: GLO FUN : svma 0x000000ce58, sz 0 inotify_rm_watch ignore -- size=0: inotify_rm_watch raw symbol [ 342]: GLO FUN : svma 0x000000ce68, sz 0 unsetenv ignore -- size=0: unsetenv raw symbol [ 343]: GLO FUN : svma 0x000000ce74, sz 0 fputs ignore -- size=0: fputs raw symbol [ 344]: GLO FUN : svma 0x000000ce84, sz 0 strncmp ignore -- size=0: strncmp raw symbol [ 345]: GLO FUN : svma 0x000000ce90, sz 0 fdatasync ignore -- size=0: fdatasync raw symbol [ 346]: GLO FUN : svma 0x000000ce9c, sz 0 abort ignore -- size=0: abort raw symbol [ 347]: GLO FUN : svma 0x000000cea8, sz 0 getutxent ignore -- size=0: getutxent raw symbol [ 348]: GLO FUN : svma 0x000000ceb8, sz 0 recv ignore -- size=0: recv raw symbol [ 349]: GLO FUN : svma 0x000000cec8, sz 0 realpath ignore -- size=0: realpath raw symbol [ 350]: GLO FUN : svma 0x000000ced4, sz 0 siglongjmp ignore -- size=0: siglongjmp raw symbol [ 351]: GLO FUN : svma 0x000000cee4, sz 0 close ignore -- size=0: close raw symbol [ 352]: GLO FUN : svma 0x000000cef4, sz 0 __lxstat64 ignore -- size=0: __lxstat64 raw symbol [ 353]: GLO FUN : svma 0x000000cf00, sz 0 setresgid ignore -- size=0: setresgid raw symbol [ 354]: GLO FUN : svma 0x000000cf0c, sz 0 mkfifo ignore -- size=0: mkfifo raw symbol [ 355]: WEA NOT : svma 0x0000000000, sz 0 __cxa_call_unexpected raw symbol [ 356]: GLO FUN : svma 0x000000cf18, sz 0 send ignore -- size=0: send raw symbol [ 357]: GLO FUN : svma 0x000000cf24, sz 0 connect ignore -- size=0: connect raw symbol [ 358]: GLO FUN : svma 0x000000cf34, sz 0 closedir ignore -- size=0: closedir raw symbol [ 359]: GLO FUN : svma 0x000000cf40, sz 0 div ignore -- size=0: div raw symbol [ 360]: GLO FUN : svma 0x000000cf4c, sz 0 atan2 ignore -- size=0: atan2 raw symbol [ 361]: GLO FUN : svma 0x000000cf58, sz 0 sched_setscheduler ignore -- size=0: sched_setscheduler raw symbol [ 362]: GLO FUN : svma 0x000000cf68, sz 0 putchar_unlocked ignore -- size=0: putchar_unlocked raw symbol [ 363]: GLO FUN : svma 0x000000cf74, sz 0 strspn ignore -- size=0: strspn raw symbol [ 364]: GLO FUN : svma 0x000000cf80, sz 0 fchmod ignore -- size=0: fchmod raw symbol [ 365]: GLO FUN : svma 0x000000cf8c, sz 0 cos ignore -- size=0: cos raw symbol [ 366]: GLO FUN : svma 0x000000cf98, sz 0 tcgetattr ignore -- size=0: tcgetattr raw symbol [ 367]: GLO FUN : svma 0x000000cfa8, sz 0 putc_unlocked ignore -- size=0: putc_unlocked raw symbol [ 368]: GLO FUN : svma 0x000000cfb4, sz 0 tcgetsid ignore -- size=0: tcgetsid raw symbol [ 369]: GLO FUN : svma 0x000000cfc0, sz 0 ftello64 ignore -- size=0: ftello64 raw symbol [ 370]: GLO FUN : svma 0x000000cfcc, sz 0 pclose ignore -- size=0: pclose raw symbol [ 371]: GLO FUN : svma 0x000000cfd8, sz 0 mount ignore -- size=0: mount ------ Canonicalising the acquired info ------ canonicaliseSymtab: 2 symbols merged canonicaliseSymtab: 0 symbols merged sym at 0x93810: prefer 'environ' to '__environ' sym at 0x93828: prefer 'timezone' to '__timezone' ------ Notifying m_redir ------ --1986:1:mallocfr newSuperblock at 0x62033000 (pszB 65520) owner VALGRIND/demangle ------ name = /bin/busybox ------ end ELF OBJECT ------------------------------------------------------- --1986-- di_notify_mmap-0: --1986-- di_notify_mmap-1: 0x4000000-0x4016fff r-x --1986-- di_notify_mmap-2: /lib/ld-2.15.so --1986-- di_notify_mmap-3: is_rx_map 1, is_rw_map 0, is_ro_map 0 --1986-- check_elf_and_get_rw_loads: ++*rw_load_count to 1 for /lib/ld-2.15.so p_vaddr 0x1ed70 p_offset 93552, p_filesz 2828 --1986-- di_notify_mmap-4: noting details in DebugInfo* at 0x61F38720 --1986-- di_notify_mmap-6: no dinfo loaded /lib/ld-2.15.so (no rx or no rw mapping) --1986-- di_notify_mmap-0: --1986-- di_notify_mmap-1: 0x401e000-0x401ffff rw- --1986-- di_notify_mmap-2: /lib/ld-2.15.so --1986-- di_notify_mmap-3: is_rx_map 0, is_rw_map 1, is_ro_map 0 --1986-- check_elf_and_get_rw_loads: ++*rw_load_count to 1 for /lib/ld-2.15.so p_vaddr 0x1ed70 p_offset 93552, p_filesz 2828 --1986-- di_notify_mmap-4: noting details in DebugInfo* at 0x61F38720 --1986-- di_notify_mmap-5: achieved accept state for /lib/ld-2.15.so ------ start ELF OBJECT ------------------------------------------------------- ------ name = /lib/ld-2.15.so Un-de-overlapped _DebugInfoMappings: [0] avma 0x4000000 size 94208 foff 0 rx -- -- [1] avma 0x401e000 size 8192 foff 90112 -- rw -- De-overlapped DebugInfoMappings: [0] avma 0x4000000 size 94208 foff 0 rx -- -- [1] avma 0x401e000 size 8192 foff 90112 -- rw -- Checking that there are no remaining overlaps. Check successful. ------ Basic facts about the object ------ object: n_oimage 97580 phdr: ioff 52 nent 7 ent_szB 32 shdr: ioff 96660 nent 23 ent_szB 40 rx_map: avma 0x4000000 size 94208 foff 0 rw_map: avma 0x401e000 size 8192 foff 90112 shdr: string table at 96451 ------ Examining the program headers ------ PT_LOAD[1]: p_vaddr 0x0 (prev 0x0) PT_LOAD[1]: p_offset 0, p_filesz 93072, perms r-x PT_LOAD[1]: acquired as rx, bias 0x4000000 PT_LOAD[2]: p_vaddr 0x1ed70 (prev 0x0) PT_LOAD[2]: p_offset 93552, p_filesz 2828, perms rw- PT_LOAD[2]: acquired as rw, bias 0x4000000 Found soname = ld-linux-armhf.so.3 ------ Examining the section headers ------ rx: at 0x4000000 are mapped foffsets 0 .. 94207 rx: contains these svma regions: svmas 0x0 .. 0x16b8f with bias 0x4000000 rw: at 0x401e000 are mapped foffsets 90112 .. 98303 rw: contains these svma regions: svmas 0x1ed70 .. 0x1f95f with bias 0x4000000 [sec 0] rx al 0 foff 0 .. 0 svma 0x0 name "" zero sized section "", ignoring [sec 1] rx al 4 foff 276 .. 311 svma 0x114 name ".note.gnu.build-id" [sec 2] rx al 4 foff 312 .. 499 svma 0x138 name ".hash" [sec 3] rx al 4 foff 500 .. 715 svma 0x1F4 name ".gnu.hash" [sec 4] rx al 4 foff 716 .. 1163 svma 0x2CC name ".dynsym" [sec 5] rx al 1 foff 1164 .. 1558 svma 0x48C name ".dynstr" [sec 6] rx al 2 foff 1560 .. 1615 svma 0x618 name ".gnu.version" [sec 7] rx al 4 foff 1616 .. 1707 svma 0x650 name ".gnu.version_d" [sec 8] rx al 4 foff 1708 .. 1859 svma 0x6AC name ".rel.dyn" [sec 9] rx al 4 foff 1860 .. 1907 svma 0x744 name ".rel.plt" [sec 10] rx al 4 foff 1908 .. 2011 svma 0x774 name ".plt" acquiring .plt avma = 0x4000774 [sec 11] rx al 16 foff 2016 .. 77523 svma 0x7E0 name ".text" acquiring .text svma = 0x7e0 .. 0x12ed3 acquiring .text avma = 0x40007e0 .. 0x4012ed3 acquiring .text bias = 0x4000000 [sec 12] rx al 4 foff 77524 .. 92771 svma 0x12ED4 name ".rodata" acquiring .rodata svma = 0x12ed4 .. 0x16a63 acquiring .rodata avma = 0x4012ed4 .. 0x4016a63 acquiring .rodata bias = 0x4000000 [sec 13] rx al 4 foff 92772 .. 92855 svma 0x16A64 name ".ARM.extab" acquiring .extab svma = 0x16a64 .. 0x16ab7 acquiring .extab avma = 0x4016a64 .. 0x4016ab7 acquiring .extab bias = 0x4000000 [sec 14] rx al 4 foff 92856 .. 93071 svma 0x16AB8 name ".ARM.exidx" acquiring .exidx svma = 0x16ab8 .. 0x16b8f acquiring .exidx avma = 0x4016ab8 .. 0x4016b8f acquiring .exidx bias = 0x4000000 [sec 15] rw al 8 foff 93552 .. 94023 svma 0x1ED70 name ".data.rel.ro" [sec 16] rw al 4 foff 94024 .. 94207 svma 0x1EF48 name ".dynamic" [sec 17] rw al 4 foff 94208 .. 94279 svma 0x1F000 name ".got" acquiring .got avma = 0x401f000 [sec 18] rw al 8 foff 94280 .. 96379 svma 0x1F048 name ".data" acquiring .data svma = 0x1f048 .. 0x1f87b acquiring .data avma = 0x401f048 .. 0x401f87b acquiring .data bias = 0x4000000 [sec 19] rw al 4 foff 96380 .. 96607 svma 0x1F87C name ".bss" acquiring .bss svma = 0x1f87c .. 0x1f95f acquiring .bss avma = 0x401f87c .. 0x401f95f acquiring .bss bias = 0x4000000 [sec 20] rx al 1 foff 96380 .. 96434 svma 0x0 name ".ARM.attributes" [sec 21] rx al 1 foff 96435 .. 96450 svma 0x0 name ".gnu_debuglink" [sec 22] rx al 1 foff 96451 .. 96657 svma 0x0 name ".shstrtab" .dynsym : ioff 716 .. 1163 .dynstr : ioff 1164 .. 1558 --- Reading (ELF, standard) dynamic symbol table (28 entries) --- raw symbol [ 1]: LOC SEC : svma 0x00000007e0, sz 0 NONAME raw symbol [ 2]: LOC SEC : svma 0x000001ed70, sz 0 NONAME raw symbol [ 3]: GLO FUN : svma 0x000000cb91, sz 24 _dl_get_tls_static_info rec(t) [ 3]: val 0x000400cb91, sz 24 _dl_get_tls_static_info raw symbol [ 4]: GLO OBJ : svma 0x000001ed74, sz 4 __pointer_chk_guard ignore -- 0x401ed74 .. 0x401ed77 outside .text svma range 0x40007e0 .. 0x4012ed3 raw symbol [ 5]: GLO OBJ : svma 0x0000000000, sz 0 GLIBC_PRIVATE ignore -- size=0: GLIBC_PRIVATE raw symbol [ 6]: GLO OBJ : svma 0x0000000000, sz 0 GLIBC_2.4 ignore -- size=0: GLIBC_2.4 raw symbol [ 7]: WEA FUN : svma 0x000000fb99, sz 36 free rec(t) [ 7]: val 0x000400fb99, sz 36 free raw symbol [ 8]: WEA FUN : svma 0x000000fc09, sz 88 realloc rec(t) [ 8]: val 0x000400fc09, sz 88 realloc raw symbol [ 9]: GLO FUN : svma 0x000000cd65, sz 22 _dl_allocate_tls rec(t) [ 9]: val 0x000400cd65, sz 22 _dl_allocate_tls raw symbol [ 10]: GLO OBJ : svma 0x000001f94c, sz 20 _r_debug rec(d) [ 10]: val 0x000401f94c, sz 20 _r_debug raw symbol [ 11]: GLO OBJ : svma 0x000001ef38, sz 4 __libc_stack_end ignore -- 0x401ef38 .. 0x401ef3b outside .text svma range 0x40007e0 .. 0x4012ed3 raw symbol [ 12]: WEA FUN : svma 0x000000fa99, sz 192 __libc_memalign rec(t) [ 12]: val 0x000400fa99, sz 192 __libc_memalign raw symbol [ 13]: GLO FUN : svma 0x000000cd7d, sz 120 _dl_deallocate_tls rec(t) [ 13]: val 0x000400cd7d, sz 120 _dl_deallocate_tls raw symbol [ 14]: WEA FUN : svma 0x000000fb61, sz 54 calloc rec(t) [ 14]: val 0x000400fb61, sz 54 calloc raw symbol [ 15]: GLO OBJ : svma 0x000001f8b8, sz 4 _dl_argv rec(d) [ 15]: val 0x000401f8b8, sz 4 _dl_argv raw symbol [ 16]: GLO FUN : svma 0x000000c3f5, sz 680 _dl_mcount rec(t) [ 16]: val 0x000400c3f5, sz 680 _dl_mcount raw symbol [ 17]: GLO FUN : svma 0x000000cb0d, sz 132 _dl_tls_setup rec(t) [ 17]: val 0x000400cb0d, sz 132 _dl_tls_setup raw symbol [ 18]: GLO FUN : svma 0x000000b4c9, sz 2 _dl_debug_state rec(t) [ 18]: val 0x000400b4c9, sz 2 _dl_debug_state raw symbol [ 19]: GLO OBJ : svma 0x000001f048, sz 2096 _rtld_global rec(d) [ 19]: val 0x000401f048, sz 2096 _rtld_global raw symbol [ 20]: GLO FUN : svma 0x000000cff5, sz 68 __tls_get_addr rec(t) [ 20]: val 0x000400cff5, sz 68 __tls_get_addr raw symbol [ 21]: GLO FUN : svma 0x000000d2c9, sz 112 _dl_make_stack_executable rec(t) [ 21]: val 0x000400d2c9, sz 112 _dl_make_stack_executable raw symbol [ 22]: WEA FUN : svma 0x000000fb59, sz 8 malloc rec(t) [ 22]: val 0x000400fb59, sz 8 malloc raw symbol [ 23]: GLO FUN : svma 0x000000cc01, sz 356 _dl_allocate_tls_init rec(t) [ 23]: val 0x000400cc01, sz 356 _dl_allocate_tls_init raw symbol [ 24]: GLO OBJ : svma 0x000001edc8, sz 328 _rtld_global_ro ignore -- 0x401edc8 .. 0x401ef0f outside .text svma range 0x40007e0 .. 0x4012ed3 raw symbol [ 25]: GLO OBJ : svma 0x000001ef10, sz 4 __stack_chk_guard ignore -- 0x401ef10 .. 0x401ef13 outside .text svma range 0x40007e0 .. 0x4012ed3 raw symbol [ 26]: GLO OBJ : svma 0x000001ef44, sz 4 __libc_enable_secure ignore -- 0x401ef44 .. 0x401ef47 outside .text svma range 0x40007e0 .. 0x4012ed3 raw symbol [ 27]: GLO FUN : svma 0x0000006809, sz 288 _dl_rtld_di_serinfo rec(t) [ 27]: val 0x0004006809, sz 288 _dl_rtld_di_serinfo ------ Canonicalising the acquired info ------ canonicaliseSymtab: 0 symbols merged ------ Notifying m_redir ------ ------ Finding image addresses for debug-info sections ------ .gnu_debuglink : ioff 96435 .. 96450 canonicaliseSymtab: 0 symbols merged --1986-- cfsi range rx-mappings coverage check: Covered 0x0-0xffffffff 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: index valgrind: in an object with soname matching: ld-linux-armhf.so.3 valgrind: was not found whilst processing valgrind: symbols from the object with soname: ld-linux-armhf.so.3 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. The package you need valgrind: to install for fix (1) is called valgrind: valgrind: On Debian, Ubuntu: libc6-dbg valgrind: On SuSE, openSuSE, Fedora, RHEL: glibc-debuginfo valgrind: valgrind: Note that if you are debugging a 32 bit process on a valgrind: 64 bit system, you will need a corresponding 32 bit debuginfo valgrind: package (e.g. libc6-dbg:i386). valgrind: valgrind: Cannot continue -- exiting now. Sorry.
I don't know all of the details of this, but memcheck has a requirement in the link loader (ld-xxx.so) that it contain two visible functions, index and strlen (and a few others depending on the platform). If these functions don't get redirected then the result can be large numbers of false positive errors. I think that the real problem is that there is no way for us to distinguish between a ld-xxx.so that does not contain 'index' and one that does but is stripped and we can't see it. If you can rebuild Valgrind you could try commenting out add_hardwired_spec( "ld-linux-armhf.so.3", "index", (Addr)&VG_(arm_linux_REDIR_FOR_index), complain_about_stripped_glibc_ldso ); in m_redir.c in the VGP_arm_linux block of VG_(redir_initialise)