Home | History | Annotate | Download | only in include
History log of /src/sys/arch/hppa/include/ptrace.h
RevisionDateAuthorComments
 1.12  06-Jun-2022  skrll Match up PTRACE_BREAKPOINT_ASM with PTRACE_BREAKPOINT which is the
gdb breakpoint instruction.
 1.11  06-Jun-2022  skrll Define a PTRACE_ILLEGAL_ASM
 1.10  24-Dec-2019  kamil Introduce PT_LWPSTATUS + PT_LWPNEXT, obsolete PT_LWPINFO

PT_LWPINFO is a legacy ptrace(2) operation that was originally intended
to retrieve the thread (LWP) information inside a traced process.

It has a number of flaws and is confused with PT_LWPINFO from FreeBSD.

PT_LWPSTATUS and PT_LWPNEXT address the problems (shortly by: rename,
removal of pl_event) and introduces new features: signal context
(pl_sigpend, pl_sigmask), LWP name (pl_name), LWP TLS base address
(pl_private). The private pointer was so far missing information for
a debugger.

PT_LWPSTATUS@nnn is now shipped with core(5) files and contain LWP specific
information, so far missed in the core(5) files.

PT_LWPSTATUS retrieves LWP information for the prompted thread.
PT_LWPNEXT retrieves LWP information for the next thread, borrowing the
semantics from NetBSD specific PT_LWPINFO.

PT_LWPINFO is namespaced with __LEGACY_PT_LWPINFO and still available for
the foreseeable future, without plans of removing it.

Add ATF tests for PT_LWPSTATUS + PT_LWPNEXT.

Keep ATF tests for PT_LWPINFO.

Switch GDB to new API.

Proposed on tech-kern@.
 1.9  18-Jun-2019  kamil branches: 1.9.2;
Introduce PTRACE_REG_FP() a helper macro to retrieve the frame pointer

The macro is dummy for ia64 (the FP register is unknown and can change
freely) and sparc/sparc64 (not stored in struct reg).
 1.8  12-Apr-2017  kamil branches: 1.8.12;
Add new macro PTRACE_BREAKPOINT_ASM in <sys/ptrace.h> MD part

This macro ships with a MD-specific assembly instruction triggering
a software breakpoint.

Missing instruction for powerpc targets.

This code is used in ATF tests (lib/libc/sys/t_ptrace_wait).

Original patch by Nick Hudson, thanks!
 1.7  08-Apr-2017  kamil Add new ptrace(2) API: PT_SETSTEP & PT_CLEARSTEP

These operations allow to mark thread as a single-stepping one.

This allows to i.a.:
- single step and emit a signal (PT_SETSTEP & PT_CONTINUE)
- single step and trace syscall entry and exit (PT_SETSTEP & PT_SYSCALL)

The former is useful for debuggers like GDB or LLDB. The latter can be used
to singlestep a usermode kernel. These examples don't limit use-cases of
this interface.

Define PT_*STEP only for platforms defining PT_STEP.

Add new ATF tests setstep[1234].

These ptrace(2) operations first appeared in FreeBSD.

Sponsored by <The NetBSD Foundation>
 1.6  25-Nov-2016  christos branches: 1.6.2;
fix register names
 1.5  25-Sep-2015  christos branches: 1.5.2;
For processors that have memory breakpoints, add macros for them to help
libproc
 1.4  15-Sep-2015  christos Provide access to pc/sp/syscall-return registers like we have for mcontext
 1.3  03-Nov-2009  snj branches: 1.3.22; 1.3.40;
Follow upstream license changes for files with Michael Shalayeff's
copyright. In most cases, this means dropping the 3rd and 4th clauses.
 1.2  22-Nov-2007  skrll branches: 1.2.18;
Define PT_MACHDEP_STRINGS for kdump(1)
 1.1  05-Jun-2002  fredette branches: 1.1.2; 1.1.4; 1.1.26; 1.1.68; 1.1.86; 1.1.88; 1.1.92; 1.1.94;
Added files to support generic HP PA-RISC based machines. hp700-specific
files to follow.
 1.1.94.1  08-Dec-2007  mjf Sync with HEAD.
 1.1.92.1  22-Nov-2007  bouyer Sync with HEAD
 1.1.88.1  09-Jan-2008  matt sync with HEAD
 1.1.86.1  27-Nov-2007  joerg Sync with HEAD. amd64 Xen support needs testing.
 1.1.68.2  03-Dec-2007  ad Sync with HEAD.
 1.1.68.1  03-Dec-2007  ad Sync with HEAD.
 1.1.26.1  07-Dec-2007  yamt sync with head
 1.1.4.2  14-Jul-2002  gehenna catch up with -current.
 1.1.4.1  05-Jun-2002  gehenna file ptrace.h was added on branch gehenna-devsw on 2002-07-14 17:47:31 +0000
 1.1.2.2  23-Jun-2002  jdolecek catch up with -current on kqueue branch
 1.1.2.1  05-Jun-2002  jdolecek file ptrace.h was added on branch kqueue on 2002-06-23 17:37:10 +0000
 1.2.18.1  11-Mar-2010  yamt sync with head
 1.3.40.4  28-Aug-2017  skrll Sync with HEAD
 1.3.40.3  05-Dec-2016  skrll Sync with HEAD
 1.3.40.2  27-Dec-2015  skrll Sync with HEAD (as of 26th Dec)
 1.3.40.1  22-Sep-2015  skrll Sync with HEAD
 1.3.22.1  03-Dec-2017  jdolecek update from HEAD
 1.5.2.2  26-Apr-2017  pgoyette Sync with HEAD
 1.5.2.1  07-Jan-2017  pgoyette Sync with HEAD. (Note that most of these changes are simply $NetBSD$
tag issues.)
 1.6.2.1  21-Apr-2017  bouyer Sync with HEAD
 1.8.12.2  13-Apr-2020  martin Mostly merge changes from HEAD upto 20200411
 1.8.12.1  08-Apr-2020  martin Merge changes from current as of 20200406
 1.9.2.1  10-Jun-2022  martin Pull up following revision(s) (requested by skrll in ticket #1468):

sys/arch/hppa/hppa/trap.c: revision 1.120
sys/arch/hppa/include/ptrace.h: revision 1.11-1.12 (via patch)

Define a PTRACE_ILLEGAL_ASM

Match up PTRACE_BREAKPOINT_ASM with PTRACE_BREAKPOINT which is the
gdb breakpoint instruction.

Only report the SSBREAKPOINT break instruction as SIGTRAP/TRAP_TRACE. All
other break instructions will be reported as SIGTRAP/TRAP_BRKPT
This fixes a mistake I made back in 2008.

PR/56866: hppa: kernel gets confused between actual breakpoints and
single-step breakpoints

RSS XML Feed