libpthread_dbg(3) is a remnant library from the M:N thread model
(pre-NetBSD-5.0) API to introspect threads within a process and for use
of debuggers.
Currently in the 1:1 model it's not used in GDB neither in LLDB and it's
not either planned to be used. It's current function to read pthread_t
structures is realizable within a regular debugger capable to
instrospect objects within a tracee (GDB, LLDB...).
Remaining users of this API can still use this library from
pkgsrc/devel/libpthread_dbg.
Sponsored by <The NetBSD Foundation>
Note PT_WATCHPOINT change to PT_*ETDBREGS.
Remove GDB and LLDB related entries from generic ptrace(2) TODO.
Note need for TRAP_SCE and TRAP_SCX si_codes in PT_SYSCALL*.
Note removal request of pthread_dbg(3).
Sponsord by <The NetBSD Foundation>
Things I want to finish for 8:
- as much as possible from the LLDB, Swift, .NET and VirtualBox projects
- more c11 in libc
Things I want to research for 9:
- turn system utilities into C libraries + add bindings for Lua
- rebase Haiku stack on NetBSD + add Kit(s) accessing libsystem utilities
Drop:
- add ATF tests for PIOD_READ_AUXV
Add new entry:
- research what happens when a tracee masks signals (including SIGTRAP)
and a breakpoint is triggered
Sponsored by <The NetBSD Foundation>
bpf_mtap of some drivers is still called in hardware interrupt context.
We want to run them in softint as well as bpf_mtap of most drivers
(see if_percpuq_softint and if_input).
To this end, bpf_mtap_softint mechanism is implemented; it defers
bpf_mtap processing to a dedicated softint for a target driver.
By using the machanism, we can move bpf_mtap processing to softint
without changing target drivers much while it adds some overhead
on CPU and memory. Once target drivers are changed to softint-based,
we should return to normal bpf_mtap.
Proposed on tech-kern and tech-net
Added new entries:
ptrace(2): Add new options in EVENT_MASK: PTRACE_LWP_CREATE and
PTRACE_LWP_EXIT
siginfo(2): Add new si_code for SIGTRAP: TRAP_LWP
Sponsored by <The NetBSD Foundation>
Removed:
- evaluate equivalent for PTRACE_O_TRACECLONE from Linux
clone(2)-like calls are traced with PTRACE_FORK, PTRACE_VFORK and
PTRACE_VFORK_DONE. VFORK ones block parent till termination or execve(2) of
its child.
Added:
- add proper implementation of PTRACE_VFORK for vfork(2)-like events
Currently PTRACE_VFORK is a stub.
Sponsored by <The NetBSD Foundation>
since the pre-6.0 period and nobody else has been doing the work. There's
a lot of things whose current state I don't know; please fill in. Also the
stuff I've added is necessarily biased towards projects I think about, so
please add more.