[PATCH 00/10] Extensions for PTWRITE

felix.willgerodt@intel.com felix.willgerodt@intel.com
Wed May 29 08:48:00 GMT 2019


From: Felix Willgerodt <felix.willgerodt@intel.com>

Hi all,

this is a set of patches extending the GDB record functionality for the new
x86 instruction PTWRITE.  PTWRITE allows the user to write any value into
the Intel Processor Trace.  This patch series enables the user to access,
store and display these values in GDB/Python.

Regards,
Felix

Felix Willgerodt (10):
  btrace: Introduce auxiliary instructions.
  btrace: Enable auxiliary instructions in record instruction-history.
  btrace: Enable auxiliary instructions in record function-call-history.
  btrace: Handle stepping and goto for auxiliary instructions.
  python: Introduce gdb.RecordAuxiliary class.
  python: Add clear_trace() to gdb.Record.
  btrace, linux: Enable ptwrite packets.
  btrace, python: Enable ptwrite listener registration.
  btrace, python: Enable calling the ptwrite listener.
  btrace: Extend event decoding for ptwrite.

 gdb/NEWS                                      |   6 +
 gdb/btrace.c                                  |  52 ++
 gdb/btrace.h                                  |  42 +-
 gdb/data-directory/Makefile.in                |   1 +
 gdb/doc/gdb.texinfo                           |   8 +-
 gdb/doc/python.texi                           | 129 +++++
 gdb/extension-priv.h                          |   4 +
 gdb/extension.c                               |  24 +
 gdb/extension.h                               |   3 +
 gdb/guile/guile.c                             |   1 +
 gdb/nat/linux-btrace.c                        |  32 ++
 gdb/python/lib/gdb/ptwrite.py                 |  83 +++
 gdb/python/py-record-btrace.c                 | 138 ++++-
 gdb/python/py-record-btrace.h                 |   6 +
 gdb/python/py-record.c                        | 118 ++++-
 gdb/python/py-record.h                        |   3 +
 gdb/python/python-internal.h                  |   3 +
 gdb/python/python.c                           |   2 +
 gdb/record-btrace.c                           |  83 ++-
 gdb/record.c                                  |   5 +
 gdb/record.h                                  |   5 +-
 gdb/testsuite/gdb.btrace/ptwrite.c            |  40 ++
 gdb/testsuite/gdb.btrace/ptwrite.exp          | 212 ++++++++
 gdb/testsuite/gdb.btrace/x86_64-ptwrite.S     | 479 ++++++++++++++++++
 gdb/testsuite/gdb.python/py-record-btrace.exp |   6 +-
 gdb/testsuite/lib/gdb.exp                     |  92 ++++
 26 files changed, 1552 insertions(+), 25 deletions(-)
 create mode 100644 gdb/python/lib/gdb/ptwrite.py
 create mode 100644 gdb/testsuite/gdb.btrace/ptwrite.c
 create mode 100644 gdb/testsuite/gdb.btrace/ptwrite.exp
 create mode 100644 gdb/testsuite/gdb.btrace/x86_64-ptwrite.S

-- 
2.20.1



More information about the Gdb-patches mailing list