This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[PATCH v4 0/4] catch syscall group
- From: Gabriel Krisman Bertazi <gabriel at krisman dot be>
- To: sergiodj at redhat dot com
- Cc: palves at redhat dot com, gdb-patches at sourceware dot org, dje at google dot com, Gabriel Krisman Bertazi <gabriel at krisman dot be>
- Date: Sun, 10 May 2015 21:27:44 -0300
- Subject: [PATCH v4 0/4] catch syscall group
- Authentication-results: sourceware.org; auth=none
- References: <87wq0gtfxu dot fsf at redhat dot com>
Thank you both for your review.
This version has the following improvements:
* Apply fixes suggested by Sergio in the testsuite.
* Use xsltproc to generate the xml files.
Regarding the last change, it allowed me to identify inconsistencies in
groups for some architectures. The current design makes sure these
inconsistencies are fixed by centralizing the group information in a
single file.
Also, this patch series *does not* include the generated files because
they are too big and can get in the way of code review. Reviewers must
generate those files by hand by entering the gdb/syscalls directory and
running the makefile there. Build will fail if reviewer don't do this!
Once we get this approved, I'll make sure to include the generated files
in the commit before pushing. Hopefully this will make code review
easier.
Also, I generated this format-patch with --find-renames. If it gets in
the way of git am/git apply, please let me know and I'll resend it.
As usual, I'm not resending the documentation patch again because it was
already approved by Eli.
Thanks!
Gabriel Krisman Bertazi (4):
Implemement support for groups of syscalls in the xml-syscall
interface.
Add support to catch groups of syscalls.
Add tests for catching groups of syscalls on supported
architectures.
Include group information in xml syscall files.
gdb/break-catch-syscall.c | 94 +++++++-
gdb/syscalls/Makefile | 42 ++++
.../{aarch64-linux.xml => aarch64-linux.xml.in} | 0
.../{amd64-linux.xml => amd64-linux.xml.in} | 0
gdb/syscalls/apply-defaults.xsl | 27 +++
gdb/syscalls/{arm-linux.xml => arm-linux.xml.in} | 0
gdb/syscalls/{bfin-linux.xml => bfin-linux.xml.in} | 0
gdb/syscalls/gdb-syscalls.dtd | 3 +-
gdb/syscalls/{i386-linux.xml => i386-linux.xml.in} | 0
gdb/syscalls/linux-defaults.xml.in | 243 +++++++++++++++++++++
.../{mips-n32-linux.xml => mips-n32-linux.xml.in} | 0
.../{mips-n64-linux.xml => mips-n64-linux.xml.in} | 0
.../{mips-o32-linux.xml => mips-o32-linux.xml.in} | 0
gdb/syscalls/{ppc-linux.xml => ppc-linux.xml.in} | 0
.../{ppc64-linux.xml => ppc64-linux.xml.in} | 0
gdb/syscalls/{s390-linux.xml => s390-linux.xml.in} | 0
.../{s390x-linux.xml => s390x-linux.xml.in} | 0
.../{sparc-linux.xml => sparc-linux.xml.in} | 0
.../{sparc64-linux.xml => sparc64-linux.xml.in} | 0
gdb/testsuite/gdb.base/catch-syscall.exp | 39 ++++
gdb/xml-syscall.c | 231 +++++++++++++++++++-
gdb/xml-syscall.h | 16 ++
22 files changed, 683 insertions(+), 12 deletions(-)
create mode 100644 gdb/syscalls/Makefile
rename gdb/syscalls/{aarch64-linux.xml => aarch64-linux.xml.in} (100%)
rename gdb/syscalls/{amd64-linux.xml => amd64-linux.xml.in} (100%)
create mode 100644 gdb/syscalls/apply-defaults.xsl
rename gdb/syscalls/{arm-linux.xml => arm-linux.xml.in} (100%)
rename gdb/syscalls/{bfin-linux.xml => bfin-linux.xml.in} (100%)
rename gdb/syscalls/{i386-linux.xml => i386-linux.xml.in} (100%)
create mode 100644 gdb/syscalls/linux-defaults.xml.in
rename gdb/syscalls/{mips-n32-linux.xml => mips-n32-linux.xml.in} (100%)
rename gdb/syscalls/{mips-n64-linux.xml => mips-n64-linux.xml.in} (100%)
rename gdb/syscalls/{mips-o32-linux.xml => mips-o32-linux.xml.in} (100%)
rename gdb/syscalls/{ppc-linux.xml => ppc-linux.xml.in} (100%)
rename gdb/syscalls/{ppc64-linux.xml => ppc64-linux.xml.in} (100%)
rename gdb/syscalls/{s390-linux.xml => s390-linux.xml.in} (100%)
rename gdb/syscalls/{s390x-linux.xml => s390x-linux.xml.in} (100%)
rename gdb/syscalls/{sparc-linux.xml => sparc-linux.xml.in} (100%)
rename gdb/syscalls/{sparc64-linux.xml => sparc64-linux.xml.in} (100%)
--
2.1.0