opnsense-src/sys/cddl/dev/dtrace
Mark Johnston 3ba8e9dc4a dtrace/amd64: Implement emulation of call instructions
Here, the provider is responsible for updating the trapframe to redirect
control flow and for computing the return address.  Once software-saved
registers are restored, the emulation shifts the remaining context down
on the stack to make space for the return address, then copies the
address provided by the invop handler.  dtrace_invop() is modified to
allocate temporary storage space on the stack for use by the provider to
return the return address.

This is to support a new provider for amd64 which can instrument
arbitrary instructions, not just function entry and exit instructions as
FBT does.

In collaboration with:	christos
Sponsored by:	Google, Inc. (GSoC 2022)
Sponsored by:	The FreeBSD Foundation
MFC after:	2 weeks
2022-08-09 18:34:01 -04:00
..
aarch64 Fix dtrace fbt return probes on arm64 2021-12-14 16:32:12 +00:00
amd64 dtrace/amd64: Implement emulation of call instructions 2022-08-09 18:34:01 -04:00
arm Create sys/reg.h for the common code previously in machine/reg.h 2021-08-30 12:50:53 +01:00
i386 Fix syntax 2020-12-01 23:51:48 +00:00
powerpc Create sys/reg.h for the common code previously in machine/reg.h 2021-08-30 12:50:53 +01:00
riscv Create sys/reg.h for the common code previously in machine/reg.h 2021-08-30 12:50:53 +01:00
x86 Sync the x86 dis_tables.c with upstream. 2017-02-03 03:22:47 +00:00
dtrace_anon.c
dtrace_cddl.h dtrace: Use C99 fixed-width integer types. 2021-12-28 09:41:25 -08:00
dtrace_debug.c Fix a backwards comparison in the code to dump a DTrace debug buffer. 2017-03-13 18:43:00 +00:00
dtrace_hacks.c Fix DTrace's panic() action. 2015-04-24 03:19:30 +00:00
dtrace_ioctl.c Don't use pcpu_find() to determine if a CPU ID is valid. 2017-11-27 18:42:23 +00:00
dtrace_load.c dtrace: use %zu format specifier for data of size_t type 2021-08-09 00:27:04 +03:00
dtrace_modevent.c
dtrace_sysctl.c dtrace: add a knob to control maximum size of principal buffers 2022-01-11 15:47:50 +02:00
dtrace_test.c Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many) 2020-02-26 14:26:36 +00:00
dtrace_unload.c Adjust dtrace_unload() definition to avoid clang 15 warning 2022-07-19 20:48:47 +02:00
dtrace_vtime.c