diff options
Diffstat (limited to 'sys/geom/mirror/g_mirror.c')
-rw-r--r-- | sys/geom/mirror/g_mirror.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/geom/mirror/g_mirror.c b/sys/geom/mirror/g_mirror.c index 5cf1d58..750aa05 100644 --- a/sys/geom/mirror/g_mirror.c +++ b/sys/geom/mirror/g_mirror.c @@ -2805,6 +2805,7 @@ g_mirror_shutdown(void *arg, int howto) struct g_geom *gp, *gp2; mp = arg; + DROP_GIANT(); g_topology_lock(); LIST_FOREACH_SAFE(gp, &mp->geom, geom, gp2) { if (gp->softc == NULL) @@ -2812,6 +2813,7 @@ g_mirror_shutdown(void *arg, int howto) g_mirror_destroy(gp->softc, 1); } g_topology_unlock(); + PICKUP_GIANT(); #if 0 tsleep(&gp, PRIBIO, "m:shutdown", hz * 20); #endif |