#
8370e9df |
| 29-Jul-2024 |
Mark Johnston <markj@FreeBSD.org> |
vm: Remove kernel stack swapping support, part 3
- Modify PHOLD() to no longer fault in the process. - Remove _PHOLD_LITE(), which is now the same as _PHOLD(), fix up consumers. - Remove faultin()
vm: Remove kernel stack swapping support, part 3
- Modify PHOLD() to no longer fault in the process. - Remove _PHOLD_LITE(), which is now the same as _PHOLD(), fix up consumers. - Remove faultin() and its callees.
Tested by: pho Reviewed by: imp, kib Differential Revision: https://reviews.freebsd.org/D46114
show more ...
|
Revision tags: release/14.1.0, release/13.3.0, release/14.0.0 |
|
#
95ee2897 |
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove $FreeBSD$: two-line .h pattern
Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
|
Revision tags: release/13.2.0, release/12.4.0, release/13.1.0 |
|
#
3a56cfed |
| 01-Mar-2022 |
Mark Johnston <markj@FreeBSD.org> |
fasttrap: Avoid creating WX mappings
fasttrap instruments certain instructions by overwriting them and copying the original instruction to some per-thread scratch space which is executed after the p
fasttrap: Avoid creating WX mappings
fasttrap instruments certain instructions by overwriting them and copying the original instruction to some per-thread scratch space which is executed after the probe fires. This trampoline jumps back to the tracepoint after executing the original instruction.
The created mapping has both write and execute permissions, and so this mechanism doesn't work when allow_wx is disabled. Work around the restriction by using proc_rwmem() to write to the trampoline.
Reviewed by: vangyzen Tested by: Amit <akamit91@hotmail.com> MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D34304
show more ...
|
Revision tags: release/12.3.0 |
|
#
b7924341 |
| 27-Aug-2021 |
Andrew Turner <andrew@FreeBSD.org> |
Create sys/reg.h for the common code previously in machine/reg.h
Move the common kernel function signatures from machine/reg.h to a new sys/reg.h. This is in preperation for adding PT_GETREGSET to p
Create sys/reg.h for the common code previously in machine/reg.h
Move the common kernel function signatures from machine/reg.h to a new sys/reg.h. This is in preperation for adding PT_GETREGSET to ptrace(2).
Reviewed by: imp, markj Sponsored by: DARPA, AFRL (original work) Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D19830
show more ...
|
Revision tags: release/13.0.0, release/12.2.0, release/11.4.0 |
|
#
a7af4a3e |
| 12-Nov-2019 |
Konstantin Belousov <kib@FreeBSD.org> |
amd64: move GDT into PCPU area.
Reviewed by: jhb, markj Tested by: pho Sponsored by: The FreeBSD Foundation MFC after: 1 week Differential revision: https://reviews.freebsd.org/D22302
|
Revision tags: release/12.1.0, release/11.3.0 |
|
#
2aaf9152 |
| 18-Mar-2019 |
Alan Somers <asomers@FreeBSD.org> |
MFHead@r345275
|
#
b18a4cca |
| 05-Mar-2019 |
Enji Cooper <ngie@FreeBSD.org> |
MFhead@r344786
|
#
844fc3e9 |
| 04-Mar-2019 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r344549 through r344775.
|
#
8e7127fd |
| 26-Feb-2019 |
Mark Johnston <markj@FreeBSD.org> |
Fix fasttrap_sig{trap,segv}().
- Don't leak the ksiginfo structure. - Hold the proc lock when sending a signal in fasttrap_sigsegv().
MFC after: 1 week Sponsored by: The FreeBSD Foundation
|
#
df59ed07 |
| 26-Feb-2019 |
Mark Johnston <markj@FreeBSD.org> |
Remove illumos-specific code from the x86 fasttrap_isa.c.
The file has not been touched upstream in over a decade, and the nature of the code means that a lot of FreeBSD-specific bits are required.
Remove illumos-specific code from the x86 fasttrap_isa.c.
The file has not been touched upstream in over a decade, and the nature of the code means that a lot of FreeBSD-specific bits are required. Remove the dead code to improve readability. No functional change intended.
Discussed with: cem MFC after: 1 week Sponsored by: The FreeBSD Foundation
show more ...
|
#
18b18078 |
| 25-Feb-2019 |
Enji Cooper <ngie@FreeBSD.org> |
MFhead@r344527
|
#
a8fe8db4 |
| 25-Feb-2019 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r344178 through r344512.
|
#
f23e684b |
| 21-Feb-2019 |
Mark Johnston <markj@FreeBSD.org> |
Commit a missing piece of r344452.
MFC with: r344452
|
#
4f1b715c |
| 21-Feb-2019 |
Mark Johnston <markj@FreeBSD.org> |
Fix a tracepoint lookup race in fasttrap_pid_probe().
fasttrap hooks the userspace breakpoint handler; the hook looks up the breakpoint address in a hash table of tracepoints. It is possible for th
Fix a tracepoint lookup race in fasttrap_pid_probe().
fasttrap hooks the userspace breakpoint handler; the hook looks up the breakpoint address in a hash table of tracepoints. It is possible for the tracepoint to be removed by a different thread in between the breakpoint trap and the hash table lookup, in which case SIGTRAP gets delivered to the target process. Fix the problem by adding a per-process generation counter that gets incremented when a tracepoint belonging to that process is removed. Then, when a lookup fails, the trapping instruction is restarted if the thread's counter doesn't match that of the process.
Reviewed by: cem MFC after: 2 weeks Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D19273
show more ...
|
Revision tags: release/12.0.0, release/11.2.0 |
|
#
d41e41f9 |
| 27-Mar-2018 |
John Baldwin <jhb@FreeBSD.org> |
Remove very old and unused signal information codes.
These have been supplanted by the MI signal information codes in <sys/signal.h> since 7.0. The FPE_*_TRAP ones were deprecated even earlier in 1
Remove very old and unused signal information codes.
These have been supplanted by the MI signal information codes in <sys/signal.h> since 7.0. The FPE_*_TRAP ones were deprecated even earlier in 1999.
PR: 226579 (exp-run) Reviewed by: kib Differential Revision: https://reviews.freebsd.org/D14637
show more ...
|
#
5bab6234 |
| 11-Dec-2017 |
Mark Johnston <markj@FreeBSD.org> |
Pass the trap frame to fasttrap hooks.
The DTrace fasttrap entry points expect a struct reg containing the register values of the calling thread. Perform the conversion in fasttrap rather than in th
Pass the trap frame to fasttrap hooks.
The DTrace fasttrap entry points expect a struct reg containing the register values of the calling thread. Perform the conversion in fasttrap rather than in the trap handler: this reduces the number of ifdefs and avoids wasting stack space for traps that don't involve DTrace.
MFC after: 2 weeks
show more ...
|
#
937d37fc |
| 19-Nov-2017 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Merge ^/head r325842 through r325998.
|
#
e9a2e17d |
| 16-Nov-2017 |
Mark Johnston <markj@FreeBSD.org> |
Avoid holding the process in uread() and uwrite().
In general, higher-level code will atomically verify that the process is not exiting and hold the process. In one case, we were using uwrite() to c
Avoid holding the process in uread() and uwrite().
In general, higher-level code will atomically verify that the process is not exiting and hold the process. In one case, we were using uwrite() to copy a probed instruction to a per-thread scratch space block, but copyout() can be used for this purpose instead; this change effectively reverts r227291.
MFC after: 1 week
show more ...
|
Revision tags: release/10.4.0, release/11.1.0 |
|
#
9b3ece1c |
| 04-Feb-2017 |
Enji Cooper <ngie@FreeBSD.org> |
MFhead@r313243
|
#
14f850f3 |
| 27-Jan-2017 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r312720 through r312893.
|
#
da5320b9 |
| 27-Jan-2017 |
Mark Johnston <markj@FreeBSD.org> |
Fix an off-by-one in an assertion on fasttrap tracepoint sizes.
FASTTRAP_MAX_INSTR_SIZE is the largest valid value of a tracepoint, so correct the assertion accordingly. This limit was hit with a 15
Fix an off-by-one in an assertion on fasttrap tracepoint sizes.
FASTTRAP_MAX_INSTR_SIZE is the largest valid value of a tracepoint, so correct the assertion accordingly. This limit was hit with a 15-byte NOP.
Reported by: bdrewery MFC after: 1 week Sponsored by: Dell EMC Isilon
show more ...
|
#
67bc8c8b |
| 19-Nov-2016 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r308491 through r308841.
|
#
188011db |
| 18-Nov-2016 |
Mark Johnston <markj@FreeBSD.org> |
Support fetching RFLAGS in fasttrap_getreg().
MFC after: 1 week
|
Revision tags: release/11.0.1 |
|
#
335bcabe |
| 28-Sep-2016 |
Ed Maste <emaste@FreeBSD.org> |
Merge ^/head r306303 through 306411.
|
#
9e579a58 |
| 24-Sep-2016 |
Mark Johnston <markj@FreeBSD.org> |
Move implementations of uread() and uwrite() to the illumos compat layer.
MFC after: 1 week
|