Removal of Giant droping wrappers for GEOM classes.
Sponsored by: The FreeBSD Foundation
This commit is contained in:
parent
dff9131e58
commit
4e2732b550
@ -1231,7 +1231,6 @@ g_eli_shutdown_pre_sync(void *arg, int howto)
|
||||
int error;
|
||||
|
||||
mp = arg;
|
||||
DROP_GIANT();
|
||||
g_topology_lock();
|
||||
LIST_FOREACH_SAFE(gp, &mp->geom, geom, gp2) {
|
||||
sc = gp->softc;
|
||||
@ -1247,7 +1246,6 @@ g_eli_shutdown_pre_sync(void *arg, int howto)
|
||||
}
|
||||
}
|
||||
g_topology_unlock();
|
||||
PICKUP_GIANT();
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -190,7 +190,6 @@ g_mbr_ioctl(struct g_provider *pp, u_long cmd, void *data, int fflag, struct thr
|
||||
case DIOCSMBR: {
|
||||
if (!(fflag & FWRITE))
|
||||
return (EPERM);
|
||||
DROP_GIANT();
|
||||
g_topology_lock();
|
||||
cp = LIST_FIRST(&gp->consumer);
|
||||
if (cp->acw == 0) {
|
||||
@ -205,7 +204,6 @@ g_mbr_ioctl(struct g_provider *pp, u_long cmd, void *data, int fflag, struct thr
|
||||
if (opened)
|
||||
g_access(cp, 0, -1 , 0);
|
||||
g_topology_unlock();
|
||||
PICKUP_GIANT();
|
||||
return(error);
|
||||
}
|
||||
default:
|
||||
|
@ -176,7 +176,6 @@ g_pc98_ioctl(struct g_provider *pp, u_long cmd, void *data, int fflag, struct th
|
||||
case DIOCSPC98: {
|
||||
if (!(fflag & FWRITE))
|
||||
return (EPERM);
|
||||
DROP_GIANT();
|
||||
g_topology_lock();
|
||||
cp = LIST_FIRST(&gp->consumer);
|
||||
if (cp->acw == 0) {
|
||||
@ -191,7 +190,6 @@ g_pc98_ioctl(struct g_provider *pp, u_long cmd, void *data, int fflag, struct th
|
||||
if (opened)
|
||||
g_access(cp, 0, -1 , 0);
|
||||
g_topology_unlock();
|
||||
PICKUP_GIANT();
|
||||
return(error);
|
||||
}
|
||||
default:
|
||||
|
@ -247,9 +247,7 @@ g_modevent(module_t mod, int type, void *data)
|
||||
break;
|
||||
case MOD_UNLOAD:
|
||||
g_trace(G_T_TOPOLOGY, "g_modevent(%s, UNLOAD)", mp->name);
|
||||
DROP_GIANT();
|
||||
error = g_unload_class(mp);
|
||||
PICKUP_GIANT();
|
||||
if (error == 0) {
|
||||
KASSERT(LIST_EMPTY(&mp->geom),
|
||||
("Unloaded class (%s) still has geom", mp->name));
|
||||
|
@ -2697,7 +2697,6 @@ g_journal_shutdown(void *arg, int howto __unused)
|
||||
if (panicstr != NULL)
|
||||
return;
|
||||
mp = arg;
|
||||
DROP_GIANT();
|
||||
g_topology_lock();
|
||||
LIST_FOREACH_SAFE(gp, &mp->geom, geom, gp2) {
|
||||
if (gp->softc == NULL)
|
||||
@ -2706,7 +2705,6 @@ g_journal_shutdown(void *arg, int howto __unused)
|
||||
g_journal_destroy(gp->softc);
|
||||
}
|
||||
g_topology_unlock();
|
||||
PICKUP_GIANT();
|
||||
}
|
||||
|
||||
/*
|
||||
@ -2725,7 +2723,6 @@ g_journal_lowmem(void *arg, int howto __unused)
|
||||
|
||||
g_journal_stats_low_mem++;
|
||||
mp = arg;
|
||||
DROP_GIANT();
|
||||
g_topology_lock();
|
||||
LIST_FOREACH(gp, &mp->geom, geom) {
|
||||
sc = gp->softc;
|
||||
@ -2756,7 +2753,6 @@ g_journal_lowmem(void *arg, int howto __unused)
|
||||
break;
|
||||
}
|
||||
g_topology_unlock();
|
||||
PICKUP_GIANT();
|
||||
}
|
||||
|
||||
static void g_journal_switcher(void *arg);
|
||||
@ -2871,7 +2867,6 @@ g_journal_do_switch(struct g_class *classp)
|
||||
char *mountpoint;
|
||||
int error, save;
|
||||
|
||||
DROP_GIANT();
|
||||
g_topology_lock();
|
||||
LIST_FOREACH(gp, &classp->geom, geom) {
|
||||
sc = gp->softc;
|
||||
@ -2886,7 +2881,6 @@ g_journal_do_switch(struct g_class *classp)
|
||||
mtx_unlock(&sc->sc_mtx);
|
||||
}
|
||||
g_topology_unlock();
|
||||
PICKUP_GIANT();
|
||||
|
||||
mtx_lock(&mountlist_mtx);
|
||||
TAILQ_FOREACH(mp, &mountlist, mnt_list) {
|
||||
@ -2901,11 +2895,9 @@ g_journal_do_switch(struct g_class *classp)
|
||||
continue;
|
||||
/* mtx_unlock(&mountlist_mtx) was done inside vfs_busy() */
|
||||
|
||||
DROP_GIANT();
|
||||
g_topology_lock();
|
||||
sc = g_journal_find_device(classp, mp->mnt_gjprovider);
|
||||
g_topology_unlock();
|
||||
PICKUP_GIANT();
|
||||
|
||||
if (sc == NULL) {
|
||||
GJ_DEBUG(0, "Cannot find journal geom for %s.",
|
||||
@ -2984,7 +2976,6 @@ next:
|
||||
|
||||
sc = NULL;
|
||||
for (;;) {
|
||||
DROP_GIANT();
|
||||
g_topology_lock();
|
||||
LIST_FOREACH(gp, &g_journal_class.geom, geom) {
|
||||
sc = gp->softc;
|
||||
@ -3000,7 +2991,6 @@ next:
|
||||
sc = NULL;
|
||||
}
|
||||
g_topology_unlock();
|
||||
PICKUP_GIANT();
|
||||
if (sc == NULL)
|
||||
break;
|
||||
mtx_assert(&sc->sc_mtx, MA_OWNED);
|
||||
|
@ -3310,7 +3310,6 @@ g_mirror_shutdown_post_sync(void *arg, int howto)
|
||||
int error;
|
||||
|
||||
mp = arg;
|
||||
DROP_GIANT();
|
||||
g_topology_lock();
|
||||
g_mirror_shutdown = 1;
|
||||
LIST_FOREACH_SAFE(gp, &mp->geom, geom, gp2) {
|
||||
@ -3329,7 +3328,6 @@ g_mirror_shutdown_post_sync(void *arg, int howto)
|
||||
g_topology_lock();
|
||||
}
|
||||
g_topology_unlock();
|
||||
PICKUP_GIANT();
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -611,12 +611,10 @@ g_mountver_shutdown_pre_sync(void *arg, int howto)
|
||||
struct g_geom *gp, *gp2;
|
||||
|
||||
mp = arg;
|
||||
DROP_GIANT();
|
||||
g_topology_lock();
|
||||
LIST_FOREACH_SAFE(gp, &mp->geom, geom, gp2)
|
||||
g_mountver_destroy(gp, 1);
|
||||
g_topology_unlock();
|
||||
PICKUP_GIANT();
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -2462,7 +2462,6 @@ g_raid_shutdown_post_sync(void *arg, int howto)
|
||||
struct g_raid_volume *vol;
|
||||
|
||||
mp = arg;
|
||||
DROP_GIANT();
|
||||
g_topology_lock();
|
||||
g_raid_shutdown = 1;
|
||||
LIST_FOREACH_SAFE(gp, &mp->geom, geom, gp2) {
|
||||
@ -2477,7 +2476,6 @@ g_raid_shutdown_post_sync(void *arg, int howto)
|
||||
g_topology_lock();
|
||||
}
|
||||
g_topology_unlock();
|
||||
PICKUP_GIANT();
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -3543,7 +3543,6 @@ g_raid3_shutdown_post_sync(void *arg, int howto)
|
||||
int error;
|
||||
|
||||
mp = arg;
|
||||
DROP_GIANT();
|
||||
g_topology_lock();
|
||||
g_raid3_shutdown = 1;
|
||||
LIST_FOREACH_SAFE(gp, &mp->geom, geom, gp2) {
|
||||
@ -3562,7 +3561,6 @@ g_raid3_shutdown_post_sync(void *arg, int howto)
|
||||
g_topology_lock();
|
||||
}
|
||||
g_topology_unlock();
|
||||
PICKUP_GIANT();
|
||||
}
|
||||
|
||||
static void
|
||||
|
Loading…
x
Reference in New Issue
Block a user