rtld dropping core on recent -current

From: Steve Kargl <sgk_at_troutmask.apl.washington.edu>
Date: Thu, 2 Aug 2012 14:39:54 -0700
% file /usr/local/bin/ppdpo
/usr/local/bin/ppdpo: ELF 32-bit LSB shared object, Intel 80386, \
version 1 (FreeBSD), dynamically linked (uses shared libs), FreeBSD-style,\
for FreeBSD 10.0 (1000015), stripped

% ldd /usr/local/bin/ppdpo
/usr/local/bin/ppdpo:
/usr/local/bin/ppdpo: signal 11

% gdb741 /usr/obj/usr/src/usr.bin/ldd/ldd ldd.core
GNU gdb (GDB) 7.4.1 [GDB v7.4.1 for FreeBSD]
Copyright (C) 2012 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 "i386-portbld-freebsd10.0".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/obj/usr/src/usr.bin/ldd/ldd...done.
[New process 100147]
Core was generated by `ldd'.
Program terminated with signal 11, Segmentation fault.
(gdb) bt
#0  0x4804fa4e in digest_notes (obj=0x4806b000, note_start=1208398156,\
    note_end=1208398204) at /usr/src/libexec/rtld-elf/rtld.c:1326
#1  0x480566dc in map_object (fd=3, path=0x48065320 "/usr/local/bin/ppdpo",\
    sb=0xbfbfd4dc)
    at /usr/src/libexec/rtld-elf/map_object.c:156
#2  0x48051627 in do_load_object (flags=<optimized out>, sbp=<optimized out>,\
    path=<optimized out>, name=<optimized out>, 
    fd=<optimized out>) at /usr/src/libexec/rtld-elf/rtld.c:2100
#3  load_object (name=0xbfbfd8d0 "/usr/local/bin/ppdpo", fd_u=-1,\
    refobj=0x48067000, flags=<optimized out>)
    at /usr/src/libexec/rtld-elf/rtld.c:2070
#4  0x48052303 in dlopen_object (name=0xbfbfd8d0 "/usr/local/bin/ppdpo",\
    fd=-1, refobj=0x48067000, lo_flags=6, mode=0, 
    lockstate=0xbfbfd590) at /usr/src/libexec/rtld-elf/rtld.c:2799
#5  0x48052fea in rtld_dlopen (name=0xbfbfd8d0 "/usr/local/bin/ppdpo",\
    fd=-1, mode=512) at /usr/src/libexec/rtld-elf/rtld.c:2761
#6  0x0804935b in main (argc=1, argv=0xbfbfd760) at /usr/src/usr.bin/ldd\
    /ldd.c:251
(gdb) list
1321                            obj->osrel = *(const int32_t *)(p);
1322                            dbg("note osrel %d", obj->osrel);
1323                            break;
1324                    case CRT_NOINIT_NOTETYPE:
1325                            /* FreeBSD 'crt does not call init' note */
1326                            obj->crt_no_init = true;
1327                            dbg("note crt_no_init");
1328                            break;
1329                    }
1330            }
(gdb) print *obj->crt_no_init
Cannot access memory at address 0x0

% pkg_info -W /usr/local/bin/ppdpo
/usr/local/bin/ppdpo was installed by package cups-base-1.5.2_2
 
% portmaster cups-base
% pkg_info -W /usr/local/bin/ppdpo
/usr/local/bin/ppdpo was installed by package cups-base-1.5.2_2

% ldd /usr/local/bin/ppdpo
/usr/local/bin/ppdpo:
/usr/local/bin/ppdpo: signal 11

-- 
Steve
Received on Thu Aug 02 2012 - 19:39:55 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:29 UTC