aboutsummaryrefslogtreecommitdiff
path: root/sys/kern/imgact_aout.c
diff options
context:
space:
mode:
authorKonstantin Belousov <kib@FreeBSD.org>2021-07-01 18:00:29 +0000
committerKonstantin Belousov <kib@FreeBSD.org>2021-07-07 11:12:07 +0000
commit28a66fc3da3460850520389971e1194f5327f560 (patch)
treec111f38ee2e876a006921f8307614b6e6880aec5 /sys/kern/imgact_aout.c
parent55976ce11a10765dee6c71b7ed6eac016bd560ef (diff)
downloadsrc-28a66fc3da3460850520389971e1194f5327f560.tar.gz
src-28a66fc3da3460850520389971e1194f5327f560.zip
Do not call FreeBSD-ABI specific code for all ABIs
Use sysentvec hooks to only call umtx_thread_exit/umtx_exec, which handle robust mutexes, for native FreeBSD ABI. Similarly, there is no sense in calling sigfastblock_clear() for non-native ABIs. Requested by: dchagin Reviewed by: dchagin, markj (previous version) Sponsored by: The FreeBSD Foundation MFC after: 2 weeks Differential revision: https://reviews.freebsd.org/D30987
Diffstat (limited to 'sys/kern/imgact_aout.c')
-rw-r--r--sys/kern/imgact_aout.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/kern/imgact_aout.c b/sys/kern/imgact_aout.c
index 3255ef169f70..9e7455e14e1d 100644
--- a/sys/kern/imgact_aout.c
+++ b/sys/kern/imgact_aout.c
@@ -101,6 +101,8 @@ struct sysentvec aout_sysvec = {
.sv_schedtail = NULL,
.sv_thread_detach = NULL,
.sv_trap = NULL,
+ .sv_onexec_old = exec_onexec_old,
+ .sv_onexit = exit_onexit,
};
#elif defined(__amd64__)
@@ -137,6 +139,8 @@ struct sysentvec aout_sysvec = {
.sv_set_syscall_retval = ia32_set_syscall_retval,
.sv_fetch_syscall_args = ia32_fetch_syscall_args,
.sv_syscallnames = freebsd32_syscallnames,
+ .sv_onexec_old = exec_onexec_old,
+ .sv_onexit = exit_onexit,
};
#else
#error "Port me"