summaryrefslogtreecommitdiff
path: root/sys/kern/kern_linker.c
diff options
context:
space:
mode:
authorJohn Baldwin <jhb@FreeBSD.org>2009-02-05 23:01:36 +0000
committerJohn Baldwin <jhb@FreeBSD.org>2009-02-05 23:01:36 +0000
commite4d9b9eb18e55908cf8efa2439e3db7d4f4d89ec (patch)
treeaafa81f8735c76c617e6ec31245cb1c3431a7879 /sys/kern/kern_linker.c
parentab28e5167772637a990f9a2096508fe16ec80209 (diff)
Notes
Diffstat (limited to 'sys/kern/kern_linker.c')
-rw-r--r--sys/kern/kern_linker.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/kern/kern_linker.c b/sys/kern/kern_linker.c
index 1683a5a0d1e3..c5e3a4e5b087 100644
--- a/sys/kern/kern_linker.c
+++ b/sys/kern/kern_linker.c
@@ -643,8 +643,11 @@ linker_file_unload(linker_file_t file, int flags)
* link error.
*/
if (file->flags & LINKER_FILE_LINKED) {
+ file->flags &= ~LINKER_FILE_LINKED;
+ KLD_UNLOCK();
linker_file_sysuninit(file);
linker_file_unregister_sysctls(file);
+ KLD_LOCK();
}
TAILQ_REMOVE(&linker_files, file, link);