Page MenuHomeFreeBSD

rtld segfault

Authored By
kevans
Oct 19 2020, 5:28 PM
Size
2 KB
Referenced Files
None
Subscribers
None

rtld segfault

# gdb -core qemu_kyua.core /usr/bin/kyua
GNU gdb (GDB) 9.2 [GDB v9.2 for FreeBSD]
Copyright (C) 2020 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
Type "show copying" and "show warranty" for details.
This GDB was configured as "aarch64-portbld-freebsd13.0".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/bin/kyua...
Reading symbols from /usr/lib/debug//usr/bin/kyua.debug...
warning: core file may not match specified executable file.
[New LWP 70289]
Core was generated by `kyua'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 memcpy () at /usr/src/contrib/cortex-strings/src/aarch64/memcpy.S:123
123 /usr/src/contrib/cortex-strings/src/aarch64/memcpy.S: No such file or directory.
(gdb) bt
#0 memcpy () at /usr/src/contrib/cortex-strings/src/aarch64/memcpy.S:123
#1 0x0000004000014fc4 in do_copy_relocations (dstobj=0x4002003008) at /usr/src/libexec/rtld-elf/aarch64/reloc.c:119
#2 0x0000004000016f68 in _rtld (sp=<optimized out>, exit_proc=<optimized out>, objp=<optimized out>)
at /usr/src/libexec/rtld-elf/rtld.c:763
#3 0x0000004000014dd8 in rtld_start () at /usr/src/libexec/rtld-elf/aarch64/rtld_start.S:41
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
(gdb) up
#1 0x0000004000014fc4 in do_copy_relocations (dstobj=0x4002003008) at /usr/src/libexec/rtld-elf/aarch64/reloc.c:119
119 /usr/src/libexec/rtld-elf/aarch64/reloc.c: No such file or directory.
(gdb) print dstaddr
$1 = (void *) 0x360010 <typeinfo for std::length_error>
(gdb) print dstobj->relocbase
$2 = (caddr_t) 0x0
(gdb) print rela->r_offset
$3 = 3538960
(gdb) print dstsym->st_name
value has been optimized out
(gdb) print name
$4 = 0x203fbe "_ZTISt12length_error"

File Metadata

Mime Type
text/plain; charset=utf-8
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
2900888
Default Alt Text
rtld segfault (2 KB)

Event Timeline