Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 18 Mar 2004 15:01:33 +0000
From:      Peter Edwards <peter.edwards@openet-telecom.com>
To:        des@des.no
Cc:        freebsd-current@freebsd.org
Subject:   Re: Pan crashing in libgnuregex after -pthread switchover
Message-ID:  <4059B9CD.1010003@openet-telecom.com>
In-Reply-To: <xzpwu5i7s9v.fsf@dwp.des.no>
References:  <4058AC1C.10208@mitre.org> <xzpwu5i7s9v.fsf@dwp.des.no>

next in thread | previous in thread | raw e-mail | index | archive | help
Dag-Erling Sm=C3=B8rgrav wrote:

>Jason Andresen <jandrese@mitre.org> writes:
> =20
>
>>It seems to me that every libpthread.so.1 maps to a libc_r.so.5, but
>>when I actually run pan it still crashes and shows libpthread in the
>>backtrace.  Does anybody have a clue as to what is going on here?
>>   =20
>>
>
>gdb doesn't know about libmap.conf, so the backtrace is wrong.
>
>DES
> =20
>
My understanding is that the dynamic linker fills a link_map (see=20
sys/link_elf.h) structure with the mapped name, and gdb grovels for this=20
in the core: it should work correctly on a corefile. Sounds more like=20
libpthread and libc_r are both in-process to me.

Jason, try "i sh" from gdb to see what libraries were loaded in the=20
process when it dumped.

Interestingly, from the stack trace, frame 3 shows "re_search" calling=20
into the main application, not a shared library, at the "??" bit (the=20
instruction pointer is in the wrong range for a shared library): It=20
sounds like the application is implementing a function that should=20
probably be resolved from a shared library, and the linker is binding=20
the application version instead of the standard one: that might be an iss=
ue.

(I don't think the regex library ever uses callbacks, which would be the=20
only other reason I can think it'd happen)

The sysutils/pstack has a good chance of finding the name of the "??"=20
function if you want to run that on the corefile: it takes the dynamic=20
exported functions into account as well as the debug information when=20
finding function names.

HTH,
Peter.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4059B9CD.1010003>