This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[RFC/TileGX 2/2] fix gdbserver runtime crash
- From: Jiong Wang <jiwang at tilera dot com>
- To: <gdb-patches at sourceware dot org>
- Date: Tue, 17 Sep 2013 11:24:21 +0800
- Subject: [RFC/TileGX 2/2] fix gdbserver runtime crash
- Authentication-results: sourceware.org; auth=none
- References: <50F9148F dot 3010602 at tilera dot com> <5237C847 dot 3040908 at tilera dot com>
TileGX is always 64bit, ptrace always return 64bit data, tilegx32 is
just an ABI.
So the regset size should be regnum * 8 instead of regnum * 4. The
latter cause gdbserver crash.
gdbserver/ChangeLog:
* linux-tile-low.c (tile_regsets): Modify the size field as 64bit for
each register.
please review.
thanks.
---
Regards,
Jiong
Tilera Corporation.
diff --git a/gdb/gdbserver/linux-tile-low.c b/gdb/gdbserver/linux-tile-low.c
index 8963b9a..8efb34e 100644
--- a/gdb/gdbserver/linux-tile-low.c
+++ b/gdb/gdbserver/linux-tile-low.c
@@ -124,7 +124,7 @@ tile_store_gregset (struct regcache *regcache, const void *buf)
static struct regset_info tile_regsets[] =
{
- { PTRACE_GETREGS, PTRACE_SETREGS, 0, tile_num_regs * 4,
+ { PTRACE_GETREGS, PTRACE_SETREGS, 0, tile_num_regs * 8,
GENERAL_REGS, tile_fill_gregset, tile_store_gregset },
{ 0, 0, 0, -1, -1, NULL, NULL }
};