[PATCH v2 0/7] improve btrace enable error reporting

Markus Metzger markus.t.metzger@intel.com
Fri Jan 26 14:14:00 GMT 2018


Recording may fail for a variety of reasons.  Improve the error
messages by stating more clearly what operation failed and try to give
a reason why it failed.

Further align the error messages for native and remote debugging.

Changes to v1:
  - move helper classes into gdb/common/
  - add unit tests for helpers
  - simplify helpers

Markus Metzger (7):
  common: add scoped_fd
  common: add scoped_mmap
  btrace: prepare for throwing exceptions when enabling btrace
  btrace, gdbserver: use exceptions to convey btrace enable/disable
    errors
  btrace, gdbserver: remove the to_supports_btrace target method
  btrace: improve enable error messages
  btrace: check perf_event_paranoid

 gdb/Makefile.in                       |   2 +
 gdb/btrace.c                          |   3 -
 gdb/common/scoped_fd.h                |  60 +++++
 gdb/common/scoped_mmap.h              |  76 ++++++
 gdb/gdbserver/linux-low.c             |   2 -
 gdb/gdbserver/nto-low.c               |   1 -
 gdb/gdbserver/server.c                |  80 +++----
 gdb/gdbserver/spu-low.c               |   1 -
 gdb/gdbserver/target.h                |   7 -
 gdb/gdbserver/win32-low.c             |   1 -
 gdb/nat/linux-btrace.c                | 427 ++++++++--------------------------
 gdb/nat/linux-btrace.h                |   3 -
 gdb/remote.c                          |  32 ---
 gdb/target-delegates.c                |  33 ---
 gdb/target.c                          |   8 -
 gdb/target.h                          |   7 -
 gdb/unittests/scoped_fd-selftests.c   |  90 +++++++
 gdb/unittests/scoped_mmap-selftests.c |  92 ++++++++
 gdb/x86-linux-nat.c                   |  20 +-
 19 files changed, 458 insertions(+), 487 deletions(-)
 create mode 100644 gdb/common/scoped_fd.h
 create mode 100644 gdb/common/scoped_mmap.h
 create mode 100644 gdb/unittests/scoped_fd-selftests.c
 create mode 100644 gdb/unittests/scoped_mmap-selftests.c

-- 
1.8.3.1



More information about the Gdb-patches mailing list