freebsd-dev/sys/cddl/dev/dtrace
Mark Johnston a11ac730a7 Prevent CPU migration when checking the DTrace nofault flag on x86.
dtrace_trap() consumes page and protection faults triggered by code running
in DTrace probe context. Such faults occur with interrupts disabled and are
detected using a per-CPU flag. Regular faults cause dtrace_trap() to be
called with interrupts enabled, and nothing was ensuring that the flag was
read from the correct CPU. This may result in dtrace_trap() consuming
unrelated page and protection faults when DTrace is enabled, causing the
fault handler to return without actually having handled the fault.

Diagnosed by:	Ryan Libby <rlibby@gmail.com>
MFC after:	3 days
Sponsored by:	Dell EMC Isilon
2017-02-16 23:05:20 +00:00
..
aarch64 Fix improper use of "its". 2016-11-08 23:59:41 +00:00
amd64 Prevent CPU migration when checking the DTrace nofault flag on x86. 2017-02-16 23:05:20 +00:00
arm Fix improper use of "its". 2016-11-08 23:59:41 +00:00
i386 Prevent CPU migration when checking the DTrace nofault flag on x86. 2017-02-16 23:05:20 +00:00
mips Implement FBT provider (MD part) for DTrace on MIPS. 2016-05-05 13:54:50 +00:00
powerpc Two fixups for dtrace 2016-08-06 15:06:19 +00:00
riscv Fix improper use of "its". 2016-11-08 23:59:41 +00:00
x86 Sync the x86 dis_tables.c with upstream. 2017-02-03 03:22:47 +00:00
dtrace_anon.c
dtrace_cddl.h Support an arbitrary number of arguments to DTrace syscall probes. 2015-12-17 00:00:27 +00:00
dtrace_debug.c
dtrace_hacks.c Fix DTrace's panic() action. 2015-04-24 03:19:30 +00:00
dtrace_ioctl.c Use PC-relative relocations for USDT probe sites on i386 and amd64. 2017-02-05 02:39:12 +00:00
dtrace_load.c Add tunable to disable destructive dtrace 2016-11-23 22:50:20 +00:00
dtrace_modevent.c
dtrace_sysctl.c Add tunable to disable destructive dtrace 2016-11-23 22:50:20 +00:00
dtrace_test.c
dtrace_unload.c MFV r266993: 2015-02-03 19:39:53 +00:00
dtrace_vtime.c