Follow-up: Re: recent update breaks some ports

Taku YAMAMOTO taku at tackymt.homeip.net
Wed Apr 11 19:04:14 UTC 2012


The following is the first occurence of wlock-within-wlock incident
when I run xfdesktop-settings under gdb.

Hardware watchpoint 3: lock_place[0].count_ww

Old value = 0
New value = 1
0x28f52522 in _thr_rtld_wlock_acquire (lock=0x28f63600)
    at /usr/src/lib/libthr/thread/thr_rtld.c:152
152             HANDLE_NESTED_ACQ(count_ww);
(gdb) bt
#0  0x28f52522 in _thr_rtld_wlock_acquire (lock=0x28f63600)
    at /usr/src/lib/libthr/thread/thr_rtld.c:152
#1  0x280719c1 in wlock_acquire () from /libexec/ld-elf.so.1
#2  0x2806eb15 in dlopen_object () from /libexec/ld-elf.so.1
#3  0x2806ef1b in load_filtee1 () from /libexec/ld-elf.so.1
#4  0x2806ef7d in load_filtees () from /libexec/ld-elf.so.1
#5  0x2806f318 in symlook_obj () from /libexec/ld-elf.so.1
#6  0x2806f421 in symlook_list () from /libexec/ld-elf.so.1
#7  0x2806fa0b in symlook_default () from /libexec/ld-elf.so.1
#8  0x2806fc1a in find_symdef () from /libexec/ld-elf.so.1
#9  0x2806a426 in reloc_non_plt () from /libexec/ld-elf.so.1
#10 0x2806d453 in relocate_objects () from /libexec/ld-elf.so.1
#11 0x2806ee6d in dlopen_object () from /libexec/ld-elf.so.1
#12 0x2806f862 in rtld_dlopen () from /libexec/ld-elf.so.1
#13 0x28d2a6b0 in g_module_open () from /usr/local/lib/libgmodule-2.0.so.0
#14 0x28406894 in gtk_im_context_simple_new ()
   from /usr/local/lib/libgtk-x11-2.0.so.0


The following is the first occurence of rlock-within-wlock incident.

Hardware watchpoint 2: lock_place[0].count_rw

Old value = 0
New value = 1
0x28f526fd in _thr_rtld_rlock_acquire (lock=0x28f63600)
    at /usr/src/lib/libthr/thread/thr_rtld.c:133
133             HANDLE_NESTED_ACQ(count_rw);
(gdb) bt
#0  0x28f526fd in _thr_rtld_rlock_acquire (lock=0x28f63600)
    at /usr/src/lib/libthr/thread/thr_rtld.c:133
#1  0x28071291 in rlock_acquire () from /libexec/ld-elf.so.1
#2  0x2806fccb in _rtld_bind () from /libexec/ld-elf.so.1
#3  0x28069dc9 in _rtld_bind_start () from /libexec/ld-elf.so.1
#4  0x290c3000 in ?? ()
#5  0x00000148 in ?? ()
#6  0x29356318 in ?? () from /usr/lib/libsupc++.so.1
#7  0x28f503e0 in _thr_once_init ()
   from /home/taku/work/build/biotite/usr/src/lib/libthr/libthr.so.3
#8  0xffffffff in ?? ()
#9  0x00200202 in ?? ()
#10 0x290c3000 in ?? ()
#11 0x00000148 in ?? ()
#12 0x2935eae0 in __gxx_personality_v0 () from /usr/lib/libsupc++.so.1
#13 0x2935f5c5 in __cxa_get_globals () from /usr/lib/libsupc++.so.1
#14 0x290c2710 in ?? ()
#15 0xbfbfdc48 in ?? ()
#16 0x29356325 in ?? () from /usr/lib/libsupc++.so.1
#17 0x280714c9 in lock_release () from /libexec/ld-elf.so.1
Previous frame inner to this frame (corrupt stack?)


-- 
-|-__   YAMAMOTO, Taku
 | __ <     <taku at tackymt.homeip.net>

      - A chicken is an egg's way of producing more eggs. -


More information about the freebsd-current mailing list