summaryrefslogtreecommitdiffstats
path: root/sys/geom/geom_dev.c
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>2003-02-07 23:08:24 +0000
committerphk <phk@FreeBSD.org>2003-02-07 23:08:24 +0000
commite8f2dea5ddc06968c8deacd684154cd56b9664ff (patch)
tree926f1fc791d8d4e6893f5573cb0b3fed3a603f7c /sys/geom/geom_dev.c
parent3c791c8729585027435477ccde6a53be4ba01225 (diff)
downloadFreeBSD-src-e8f2dea5ddc06968c8deacd684154cd56b9664ff.zip
FreeBSD-src-e8f2dea5ddc06968c8deacd684154cd56b9664ff.tar.gz
Commit the correct copy of the g_stat structure.
Add debug.sizeof.g_stat sysctl. Set the id field of the g_stat when we create consumers and providers. Remove biocount from consumer, we will use the counters in the g_stat structure instead. Replace one field which will need to be atomically manipulated with two fields which will not (stat.nop and stat.nend). Change add companion field to bio_children: bio_inbed for the exact same reason. Don't output the biocount in the confdot output. Fix KASSERT in g_io_request(). Add sysctl kern.geom.collectstats defaulting to off. Collect the following raw statistics conditioned on this sysctl: for each consumer and provider { total number of operations started. total number of operations completed. time last operation completed. sum of idle-time. for each of BIO_READ, BIO_WRITE and BIO_DELETE { number of operations completed. number of bytes completed. number of ENOMEM errors. number of other errors. sum of transaction time. } } API for getting hold of these statistics data not included yet.
Diffstat (limited to 'sys/geom/geom_dev.c')
-rw-r--r--sys/geom/geom_dev.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/geom/geom_dev.c b/sys/geom/geom_dev.c
index 99f4cc7..24234b9 100644
--- a/sys/geom/geom_dev.c
+++ b/sys/geom/geom_dev.c
@@ -430,7 +430,7 @@ g_dev_orphan(struct g_consumer *cp)
gp = cp->geom;
g_trace(G_T_TOPOLOGY, "g_dev_orphan(%p(%s))", cp, gp->name);
g_topology_assert();
- if (cp->biocount > 0)
+ if (cp->stat.nop != cp->stat.nend) /* XXX ? */
return;
dev = gp->softc;
if (dev->si_flags & SI_DUMPDEV)
OpenPOWER on IntegriCloud