This is the mail archive of the gdb@sources.redhat.com mailing list for the GDB 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: elf.c assign_file_positions_for_segments


On Fri, Sep 24, 2004 at 09:12:22AM +0930, Alan Modra wrote:
> On Thu, Sep 23, 2004 at 05:51:17PM +0200, Mark Kettenis wrote:
> > I'm not sure where to fix this.
> 
> I didn't think about gdb using bfd to generate core files.  Clearly, I
> need to fix my breakage of assign_file_positions_for_segments.

While waiting for gdb to build, I took a look at gcore.c.  For read-only
sections, I see you clear SEC_LOAD but leave SEC_HAS_CONTENTS set.
This is very likely why you're getting filesz non-zero for these
sections.  The new code consistently checks both SEC_LOAD and
SEC_HAS_CONTENTS whereas the old code just checked SEC_HAS_CONTENTS in
one place.

I'll take a good look at exactly why the SEC_HAS_CONTENTS check is
needed, ie. whether the following comment reflects current reality.
/* We check SEC_HAS_CONTENTS here because if NOLOAD is used in a linker
   script we may have a section with SEC_LOAD clear but which is
   supposed to have contents.  */

If we really don't need the SEC_HAS_CONTENTS test, then I'll take it out
and gdb gcore should be OK, otherwise I might ask you to clear
SEC_HAS_CONTENTS in gdb.

-- 
Alan Modra
IBM OzLabs - Linux Technology Centre


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