Lines Matching refs:geom

30  * $FreeBSD: releng/10.2/sys/geom/sched/g_sched.c 243333 2012-11-20 12:32:18Z jh $
32 * Main control module for geom-based disk schedulers ('sched').
36 * an existing provider pp and its original geom gp
40 * using the command "geom sched insert <provider>" and
45 * Deletion "geom sched destroy <provider>.sched." restores the
46 * original chain. The normal "geom sched create <provide>"
52 * geom{} g_sched_softc{} g_gsched{}
67 * A g_sched_softc{} is created with a "geom sched insert" call.
98 * removed with "geom sched destroy", we need to remove all references
118 #include <geom/geom.h>
120 #include "g_sched.h" /* geom hooks */
123 * Size of the per-geom hash table storing traffic classes.
372 * a geom and a bio and returns the private descriptor
537 * destruction can take place due to the geom topology lock; no
539 * geom as being flushed.
663 LIST_FOREACH_SAFE(gp, &g_sched_class.geom, geom, gp_tmp) {
727 * If the module is loaded at boot, the geom thread that calls
795 * g_sched_done() and g_sched_start() dispatch the geom requests to
824 struct g_geom *gp = bp->bio_to->geom;
887 * The next few functions are the geom glue.
894 g_sched_destroy(cp->geom, 1);
904 gp = pp->geom;
945 saved_start = pp->geom->start;
958 /* link pp to this geom */
960 pp->geom = gp;
981 * Create a geom node for the device passed as *pp.
998 LIST_FOREACH(gp, &mp->geom, geom) {
1007 dstgp = proxy ? pp->geom : gp; /* where do we link the provider */
1092 gp = pp->geom;
1156 pp->geom->start = g_sched_temporary_start;
1182 pp->geom = gp;
1189 struct g_geom *gp = oldpp->geom;
1191 g_reparent_provider(oldpp, newpp->geom, newpp);
1203 * original geom, and destroying the proxy provider. Also take care
1220 /* Relink the provider to its original geom. */
1230 g_sched_flush_pending(oldpp->geom->start);
1315 " destroying geom, some memory leaked.");
1336 "destroying a proxy geom, leaking some "
1366 * as the bio is posted to the geom queue (and not later, because
1458 /sys/geom/geom_io.c::g_io_request(), and remove this line.
1589 cp = LIST_FIRST(&pp->geom->consumer);
1592 gp = cp->provider->geom;
1639 * this geom is created. Right now this is under control of a kenv
1661 if (pp->geom->class == mp)
1664 taste_names = getenv("geom.sched.taste");
1682 s = getenv("geom.sched.algo");
1777 if (pp == NULL || pp->geom->class != mp) {
1794 LIST_FOREACH(gp, &mp->geom, geom) {