aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfd/ChangeLog7
-rw-r--r--bfd/elf.c2
-rw-r--r--bfd/elf32-ppc.c2
-rw-r--r--bfd/elf64-ppc.c2
4 files changed, 13 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 0687337..526dd83 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,10 @@
+2011-05-10 Jan Kratochvil <jan.kratochvil@redhat.com>
+
+ * elf.c (elfcore_grok_psinfo): Initialize CORE_PID for both native and
+ 32bit psinfo.
+ * elf32-ppc.c (ppc_elf_grok_psinfo): Initialize core_pid.
+ * elf64-ppc.c (ppc64_elf_grok_psinfo): Likewise.
+
2011-05-09 Paul Brook <paul@codesourcery.com>
* bfd-in.h (elf32_tic6x_fix_exidx_coverage): Add prototype.
diff --git a/bfd/elf.c b/bfd/elf.c
index 6fccf42..966ada0 100644
--- a/bfd/elf.c
+++ b/bfd/elf.c
@@ -8000,6 +8000,7 @@ elfcore_grok_psinfo (bfd *abfd, Elf_Internal_Note *note)
memcpy (&psinfo, note->descdata, sizeof (psinfo));
+ elf_tdata (abfd)->core_pid = psinfo.pr_pid;
elf_tdata (abfd)->core_program
= _bfd_elfcore_strndup (abfd, psinfo.pr_fname,
sizeof (psinfo.pr_fname));
@@ -8016,6 +8017,7 @@ elfcore_grok_psinfo (bfd *abfd, Elf_Internal_Note *note)
memcpy (&psinfo, note->descdata, sizeof (psinfo));
+ elf_tdata (abfd)->core_pid = psinfo.pr_pid;
elf_tdata (abfd)->core_program
= _bfd_elfcore_strndup (abfd, psinfo.pr_fname,
sizeof (psinfo.pr_fname));
diff --git a/bfd/elf32-ppc.c b/bfd/elf32-ppc.c
index c736375..42d9b46 100644
--- a/bfd/elf32-ppc.c
+++ b/bfd/elf32-ppc.c
@@ -1881,6 +1881,8 @@ ppc_elf_grok_psinfo (bfd *abfd, Elf_Internal_Note *note)
return FALSE;
case 128: /* Linux/PPC elf_prpsinfo. */
+ elf_tdata (abfd)->core_pid
+ = bfd_get_32 (abfd, note->descdata + 16);
elf_tdata (abfd)->core_program
= _bfd_elfcore_strndup (abfd, note->descdata + 32, 16);
elf_tdata (abfd)->core_command
diff --git a/bfd/elf64-ppc.c b/bfd/elf64-ppc.c
index 543a727..1394ff5 100644
--- a/bfd/elf64-ppc.c
+++ b/bfd/elf64-ppc.c
@@ -2670,6 +2670,8 @@ ppc64_elf_grok_psinfo (bfd *abfd, Elf_Internal_Note *note)
if (note->descsz != 136)
return FALSE;
+ elf_tdata (abfd)->core_pid
+ = bfd_get_32 (abfd, note->descdata + 24);
elf_tdata (abfd)->core_program
= _bfd_elfcore_strndup (abfd, note->descdata + 40, 16);
elf_tdata (abfd)->core_command