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: COPY relocs and _r_debug?


On Tue, Dec 23, 2003 at 07:00:00PM -0800, Roland McGrath wrote:
> > I noticed that around rtld.c:1652 we run through _dl_relocate_object,
> > and this eventually calls elf_machine_rela and relocates the COPY reloc
> > *before* _dl_initialize_debug has been run atleast once to give the
> > first setup values.
> > 
> > As such the _r_debug that the application sees is just zeros. What is
> > the proper order here?
> 
> The _r_debug references in ld.so (dl-debug.c), which is to say, ld.do's GOT
> entry for _r_debug, should be getting relocated to point to the application
> copy.

Okay, that's what I thought. It just turns out that on hppa, due to the
previous implementation of function descriptors there were certain COPY
relocs that had to skipped or the initialized table for the fdesc's
would be lost. I fixed this entire mess by moving over to Lu's
generalized code and reinstating the processing of these last COPY
relocs, eveything works happily now. Thanks for the input Roland.

c.


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