This is the mail archive of the libc-alpha@sources.redhat.com mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: evolution vs prelink on debian ppc sid


On Wed, Sep 25, 2002 at 06:45:01PM -0400, Jack Howarth wrote:
>    Here is another view at the prelinked evolution crash.
> If I run...
> 
> 0x018efaf4 in _dl_addr () from /lib/libc.so.6
> (gdb) bt
> #0  0x018efaf4 in _dl_addr () from /lib/libc.so.6
> #1  0x023816c4 in dladdr () from /lib/libdl.so.2

Well, I see a potential problem in _dl_addr:
  /* We assume that the string table follows the symbol table, because
     there is no way in ELF to know the size of the dynamic symbol table!!  */
prelink doesn't guarantee this for binaries, so if dladdr were used to find a
non-existant symbol in the executable, it might be a problem.

But it looks like this is not the case in your crash.
Just to make sure, do you have the
        * elf/rtld.c (dl_main): If prelinking succeeded, mark all objects
        as relocated.
patch in? Does it crash if you prelink -u the main binary?
Can you build non-stripped glibc and see in gdb where it exactly crashes
and why?

	Jakub


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]