determine real cause of ldd crash
Problem: ldd core dumps in specific cases within RTLD
> cd /usr/pkgsrc/audio/arts
> bmake install
> ldd /usr/pkg/bin/artswrapper
It dumps within rtld reading digest notes. That's because the obj pointer has a null value even though it was just created (signal 11).
Trying to step through with gdb will result in a "signal 5", stopping at ldd.c line 205, right after a fork.
I need some help determining if the problem is ldd.c or something in the kernel. I don't think rtld is really at fault here, although I'm not confident about the TLS/resident part.
#1 Updated by marino about 3 years ago
- Status changed from New to Closed
RTLD was at fault after all. The full object structure wasn't guaranteed to be fully allocated when it started digesting ELF notes.
FreeBSD hit the bug too (svn 239019)
Fixed here: http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/4db7b2663090f11386e806c421560a4d0923a7fb