From 24e6edc32b5ea54032de76535b7f8163bea7ab92 Mon Sep 17 00:00:00 2001 From: mjg Date: Sat, 4 Jul 2015 06:54:15 +0000 Subject: sysctl: switch sysctllock to a sleepable rmlock The lock is almost never taken for writing. --- sys/kern/kern_linker.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'sys/kern/kern_linker.c') diff --git a/sys/kern/kern_linker.c b/sys/kern/kern_linker.c index a4fde06..bb92e18 100644 --- a/sys/kern/kern_linker.c +++ b/sys/kern/kern_linker.c @@ -292,10 +292,10 @@ linker_file_register_sysctls(linker_file_t lf) return; sx_xunlock(&kld_sx); - sysctl_xlock(); + sysctl_wlock(); for (oidp = start; oidp < stop; oidp++) sysctl_register_oid(*oidp); - sysctl_xunlock(); + sysctl_wunlock(); sx_xlock(&kld_sx); } @@ -313,10 +313,10 @@ linker_file_unregister_sysctls(linker_file_t lf) return; sx_xunlock(&kld_sx); - sysctl_xlock(); + sysctl_wlock(); for (oidp = start; oidp < stop; oidp++) sysctl_unregister_oid(*oidp); - sysctl_xunlock(); + sysctl_wunlock(); sx_xlock(&kld_sx); } -- cgit v1.1