[PATCH V4 0/6] Intel MPX bound violation support

Walfred Tedeschi
2016-01-21T14:48:49Z

Intel MPX bound violation support.

First 5 patches of the series are preparation for the
bound violation handler.

Preparation:

Fixup implementation for GDB and gdbserver of siginfo
types for x32 and 32bits inferior running on 64bits are merged.

It was added a simple way to add fields in the
siginfo structure for all architectures.

For i386/amd64 the dependency on the siginfo where
GDB/gdbserver for the usage and display was eliminated.
Now GDB descriptions of this type are enough for display

Bound violation information can be seen in the last commit of
the series.

From V3 to V4:

* Changed changelog and added Pedro's comments on 1/6.
* Added Pedro's feedback on 3/6.
* News is added into 6/6.

Thanks for the review and regards,
-Fred

Walfred Tedeschi (6):
Merge gdb and gdbserver implementations for siginfo
Prepararion for new siginfo on Linux.
Use linux_get_siginfo_type_with_fields for x86.
Add bound related fields to the siginfo structure.
Adaptation of siginfo fixup for the new bnd fields.
Intel MPX bound violation handling.

gdb/Makefile.in | 6 +-
gdb/NEWS | 15 +
gdb/amd64-linux-nat.c | 431 +-----------------
gdb/amd64-linux-tdep.c | 4 +
gdb/config/i386/linux64.mh | 2 +-
gdb/doc/gdb.texinfo | 51 +++
gdb/gdbarch.c | 32 ++
gdb/gdbarch.h | 11 +
gdb/gdbarch.sh | 6 +
gdb/gdbserver/Makefile.in | 3 +
gdb/gdbserver/configure.srv | 4 +-
gdb/gdbserver/linux-x86-low.c | 423 +----------------
gdb/i386-linux-tdep.c | 53 +++
gdb/i386-linux-tdep.h | 8 +
gdb/i386-tdep.c | 4 +-
gdb/i386-tdep.h | 2 +
gdb/infrun.c | 34 ++
gdb/linux-tdep.c | 34 +-
gdb/linux-tdep.h | 14 +
gdb/nat/amd64-linux-siginfo.c | 574 ++++++++++++++++++++++++
gdb/nat/amd64-linux-siginfo.h | 56 +++
gdb/testsuite/gdb.arch/i386-mpx-sigsegv.c | 120 +++++
gdb/testsuite/gdb.arch/i386-mpx-sigsegv.exp | 86 ++++
gdb/testsuite/gdb.arch/i386-mpx-simple_segv.c | 66 +++
gdb/testsuite/gdb.arch/i386-mpx-simple_segv.exp | 129 ++++++
25 files changed, 1316 insertions(+), 852 deletions(-)
create mode 100644 gdb/nat/amd64-linux-siginfo.c
create mode 100644 gdb/nat/amd64-linux-siginfo.h
create mode 100644 gdb/testsuite/gdb.arch/i386-mpx-sigsegv.c
create mode 100644 gdb/testsuite/gdb.arch/i386-mpx-sigsegv.exp
create mode 100644 gdb/testsuite/gdb.arch/i386-mpx-simple_segv.c
create mode 100644 gdb/testsuite/gdb.arch/i386-mpx-simple_segv.exp

--
2.1.4