diff options
author | phk <phk@FreeBSD.org> | 2002-10-13 18:42:35 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 2002-10-13 18:42:35 +0000 |
commit | a95c8cfb2412c3227f0053ecf135288ee8023a27 (patch) | |
tree | c7b49e0fe8c68a94a373714c8fd930953f82923d /sys/geom | |
parent | 521f97afaeba7b310b6c78631913e307f0411609 (diff) | |
download | FreeBSD-src-a95c8cfb2412c3227f0053ecf135288ee8023a27.zip FreeBSD-src-a95c8cfb2412c3227f0053ecf135288ee8023a27.tar.gz |
Give GEOM modules a chance to specify their own init routine, in case they
have special requirements.
Sponsored by: DARPA & NAI Labs.
Diffstat (limited to 'sys/geom')
-rw-r--r-- | sys/geom/geom.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/geom/geom.h b/sys/geom/geom.h index c053fcb..ad63e4b 100644 --- a/sys/geom/geom.h +++ b/sys/geom/geom.h @@ -287,6 +287,9 @@ extern struct sx topology_lock; sx_assert(&topology_lock, SX_XLOCKED); \ } while (0) +#define DECLARE_GEOM_CLASS_INIT(class, name, init) \ + SYSINIT(name, SI_SUB_PSEUDO, SI_ORDER_FIRST, init, NULL); + #define DECLARE_GEOM_CLASS(class, name) \ static void \ name##init(void) \ @@ -295,7 +298,7 @@ extern struct sx topology_lock; g_add_class(&class); \ mtx_lock(&Giant); \ } \ - SYSINIT(name, SI_SUB_PSEUDO, SI_ORDER_FIRST, name##init, NULL); + DECLARE_GEOM_CLASS_INIT(class, name, name##init); #endif /* _KERNEL */ |