diff options
author | jhb <jhb@FreeBSD.org> | 2005-08-02 20:50:45 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2005-08-02 20:50:45 +0000 |
commit | 9cc151ba8fb97d3b2cd8757b210720eb034af52a (patch) | |
tree | 29a270f404d6c2a5b5c17e09fce97e02cf128441 /sys/sys/mutex.h | |
parent | 4cb266fe14aba7298f55209ff1da439dcdf6fba3 (diff) | |
download | FreeBSD-src-9cc151ba8fb97d3b2cd8757b210720eb034af52a.zip FreeBSD-src-9cc151ba8fb97d3b2cd8757b210720eb034af52a.tar.gz |
Include a SYSUNINIT() to destroy the mutex in MTX_SYSINIT. This makes
MTX_SYSINIT mutexes play well with modules that can be unloaded.
Reported by: sam
MFC after: 3 days
Diffstat (limited to 'sys/sys/mutex.h')
-rw-r--r-- | sys/sys/mutex.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/sys/mutex.h b/sys/sys/mutex.h index cc6fecb..46cbe68 100644 --- a/sys/sys/mutex.h +++ b/sys/sys/mutex.h @@ -418,7 +418,9 @@ struct mtx_args { (opts) \ }; \ SYSINIT(name##_mtx_sysinit, SI_SUB_LOCK, SI_ORDER_MIDDLE, \ - mtx_sysinit, &name##_args) + mtx_sysinit, &name##_args); \ + SYSUNINIT(name##_mtx_sysuninit, SI_SUB_LOCK, SI_ORDER_MIDDLE, \ + mtx_destroy, (mtx)) /* * The INVARIANTS-enabled mtx_assert() functionality. |