aboutsummaryrefslogtreecommitdiff
path: root/sys/kern/sysv_shm.c
diff options
context:
space:
mode:
authorMateusz Guzik <mjg@FreeBSD.org>2014-10-26 19:42:44 +0000
committerMateusz Guzik <mjg@FreeBSD.org>2014-10-26 19:42:44 +0000
commite015b1ab0a428e65297e44471d257d7eb589b383 (patch)
treedab547b54bf840f54b99e4b2af2ddd062990face /sys/kern/sysv_shm.c
parentf0c8263e558c86bcd68646157ac8738d75923c9b (diff)
downloadsrc-e015b1ab0a428e65297e44471d257d7eb589b383.tar.gz
src-e015b1ab0a428e65297e44471d257d7eb589b383.zip
Avoid dynamic syscall overhead for statically compiled modules.
The kernel tracks syscall users so that modules can safely unregister them. But if the module is not unloadable or was compiled into the kernel, there is no need to do this. Achieve this by adding SY_THR_STATIC_KLD macro which expands to SY_THR_STATIC during kernel build and 0 otherwise. Reviewed by: kib (previous version) MFC after: 2 weeks
Notes
Notes: svn path=/head/; revision=273707
Diffstat (limited to 'sys/kern/sysv_shm.c')
-rw-r--r--sys/kern/sysv_shm.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/kern/sysv_shm.c b/sys/kern/sysv_shm.c
index 3480d1140070..15ee910971ec 100644
--- a/sys/kern/sysv_shm.c
+++ b/sys/kern/sysv_shm.c
@@ -910,11 +910,11 @@ shminit()
shmexit_hook = &shmexit_myhook;
shmfork_hook = &shmfork_myhook;
- error = syscall_helper_register(shm_syscalls);
+ error = syscall_helper_register(shm_syscalls, SY_THR_STATIC_KLD);
if (error != 0)
return (error);
#ifdef COMPAT_FREEBSD32
- error = syscall32_helper_register(shm32_syscalls);
+ error = syscall32_helper_register(shm32_syscalls, SY_THR_STATIC_KLD);
if (error != 0)
return (error);
#endif