From: Mark Kettenis <mark.kettenis@xs4all.nl>
To: randolph@tausq.org
Cc: gdb-patches@sources.redhat.com
Subject: Re: [hppa-hpux] Core file support for hppa64-hp-hpux11.11
Date: Fri, 18 Nov 2005 15:30:00 -0000 [thread overview]
Message-ID: <200511181421.jAIELKb5020229@elgar.sibelius.xs4all.nl> (raw)
In-Reply-To: <437DD009.1080302@tausq.org> (message from Randolph Chung on Fri, 18 Nov 2005 20:58:49 +0800)
> Date: Fri, 18 Nov 2005 20:58:49 +0800
> From: Randolph Chung <randolph@tausq.org>
>
> > Yes. The section will come out as .core.kernel in objdump. Perhaps
> > it should be .hp.core.kernel. I'll leave the naming decision to you
> > and/or the binutils maintainers. But I think that's better than
> > having all those .proc0, .proc1, .proc2 sections that we have now.
> > And it makes it easier to pick the right one from GDB.
>
> actually there's no . prefix unless i explicitly pass one, and they will
> look like:
Hmm, looks like I misread the code in bfd//elf.c then.
> /home/tausq/core: file format elf64-hppa
>
> Sections:
> Idx Name Size VMA LMA File off
> Algn
> 0 hp.core.version0 00000004 0000000000000000 0000000000000000
> 00000350 2**0
> CONTENTS, READONLY
> 1 hp.core.kernel1 0000003c 0000000000000000 0000000000000000
> 00000354 2**0
> CONTENTS, READONLY
> 2 hp.core.comm2 00000009 0000000000000000 0000000000000000
> 00000390 2**0
> CONTENTS, READONLY
> [...]
>
> Does this match what you have in mind?
It sort of screws up the formatting doesn't it. Perhaps something
like the attached is better; we only need the HP_CORE_KERNEL section
don't we? This gives output like this:
/tmp/core: file format elf64-hppa
Sections:
Idx Name Size VMA LMA File off Algn
0 proc0 00000004 0000000000000000 0000000000000000 00000350 2**0
CONTENTS, READONLY
1 proc1 0000003c 0000000000000000 0000000000000000 00000354 2**0
CONTENTS, READONLY
2 .kernel 0000003c 0000000000000000 0000000000000000 00000354 2**0
CONTENTS, READONLY
3 proc2 00000009 0000000000000000 0000000000000000 00000390 2**0
CONTENTS, READONLY
4 proc3 00000498 0000000000000000 0000000000000000 000003a0 2**0
CONTENTS, READONLY
5 .reg/0 00000498 0000000000000000 0000000000000000 000003a0 2**2
CONTENTS
6 .reg 00000498 0000000000000000 0000000000000000 000003a0 2**2
CONTENTS
7 proc4 0000c000 8000000100000000 0000000000000000 00000838 2**0
CONTENTS, ALLOC, LOAD, CODE
Index: ChangeLog
from Mark Kettenis <kettenis@gnu.org>
* elf64-hppa.c (elf64_hppa_section_from_phdr): Create .kernel
pseudo-section. Make sure .reg section comes after the proc
section it's generated from.
Index: elf64-hppa.c
===================================================================
RCS file: /cvs/src/src/bfd/elf64-hppa.c,v
retrieving revision 1.66
diff -u -p -r1.66 elf64-hppa.c
--- elf64-hppa.c 18 Nov 2005 00:48:50 -0000 1.66
+++ elf64-hppa.c 18 Nov 2005 14:19:00 -0000
@@ -2652,6 +2652,22 @@ static bfd_boolean
elf64_hppa_section_from_phdr (bfd *abfd, Elf_Internal_Phdr *hdr, int index,
const char *typename)
{
+ if (hdr->p_type == PT_HP_CORE_KERNEL)
+ {
+ asection *sect;
+
+ if (!_bfd_elf_make_section_from_phdr (abfd, hdr, index, typename))
+ return FALSE;
+
+ sect = bfd_make_section_anyway (abfd, ".kernel");
+ if (sect == NULL)
+ return FALSE;
+ sect->size = hdr->p_filesz;
+ sect->filepos = hdr->p_offset;
+ sect->flags = SEC_HAS_CONTENTS | SEC_READONLY;
+ return TRUE;
+ }
+
if (hdr->p_type == PT_HP_CORE_PROC)
{
int sig;
@@ -2663,10 +2679,12 @@ elf64_hppa_section_from_phdr (bfd *abfd,
elf_tdata (abfd)->core_signal = sig;
- /* gdb uses the ".reg" section to read register contents. */
- if (!_bfd_elfcore_make_pseudosection (abfd, ".reg", hdr->p_filesz,
- hdr->p_offset))
+ if (!_bfd_elf_make_section_from_phdr (abfd, hdr, index, typename))
return FALSE;
+
+ /* GDB uses the ".reg" section to read register contents. */
+ return _bfd_elfcore_make_pseudosection (abfd, ".reg", hdr->p_filesz,
+ hdr->p_offset);
}
if (hdr->p_type == PT_HP_CORE_LOADABLE
prev parent reply other threads:[~2005-11-18 14:21 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-11-17 12:56 Randolph Chung
2005-11-17 14:46 ` Mark Kettenis
2005-11-17 15:52 ` Randolph Chung
2005-11-17 16:02 ` Mark Kettenis
2005-11-18 3:37 ` Randolph Chung
2005-11-18 4:44 ` Mark Kettenis
2005-11-18 13:49 ` Randolph Chung
2005-11-18 15:30 ` Mark Kettenis [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200511181421.jAIELKb5020229@elgar.sibelius.xs4all.nl \
--to=mark.kettenis@xs4all.nl \
--cc=gdb-patches@sources.redhat.com \
--cc=randolph@tausq.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox