This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [rfa, v3] Fix inferior calls during interrupted system calls on PowerPC
- From: "Ulrich Weigand" <uweigand at de dot ibm dot com>
- To: uweigand at de dot ibm dot com (Ulrich Weigand)
- Cc: drow at false dot org (Daniel Jacobowitz), gdb-patches at sourceware dot org
- Date: Sun, 11 May 2008 17:31:30 +0200 (CEST)
- Subject: Re: [rfa, v3] Fix inferior calls during interrupted system calls on PowerPC
> Daniel Jacobowitz wrote:
>
> > On Sat, May 03, 2008 at 05:31:35PM +0200, Ulrich Weigand wrote:
> > > - Should we attempt to detect SPE registers in core files?
> >
> > I don't know how SPE registers are dumped, offhand. We can fix this
> > up later.
> >
> > The patch looks OK to me.
>
> Thanks! I've checked it in now.
Unfortunately I forgot to port one aspect of the mips-linux implementation:
common ppc code needs to pass tdesc_data to the osabi handler in the first
place. Due to this oversight, the new ppc_linux_init_abi code didn't
actually do anything. I'm somewhat surprised that it still appeared to
work ...
Anyway, this patch adds the missing piece: rs6000_gdbarch_init now passed
in the target description (and architecture-specific part) via the
info.tdep_info hook, similar to mips.
Tested on powerpc-linux and powerpc64-linux, both native and using local
gdbserver mode. No change to the test results.
Committed to mainline.
Bye,
Ulrich
ChangeLog:
* rs6000-tdep.c (rs6000_gdbarch_init): Set up info.target_desc
and info.tdep_info before calling gdbarch_init_osabi.
diff -urNp gdb-orig/gdb/rs6000-tdep.c gdb-head/gdb/rs6000-tdep.c
--- gdb-orig/gdb/rs6000-tdep.c 2008-05-04 02:08:56.000000000 +0200
+++ gdb-head/gdb/rs6000-tdep.c 2008-05-11 16:34:52.034490706 +0200
@@ -3171,6 +3171,8 @@ rs6000_gdbarch_init (struct gdbarch_info
dwarf2_frame_set_init_reg (gdbarch, ppc_dwarf2_frame_init_reg);
/* Hook in ABI-specific overrides, if they have been registered. */
+ info.target_desc = tdesc;
+ info.tdep_info = (void *) tdesc_data;
gdbarch_init_osabi (info, gdbarch);
switch (info.osabi)
--
Dr. Ulrich Weigand
GNU Toolchain for Linux on System z and Cell BE
Ulrich.Weigand@de.ibm.com