summaryrefslogtreecommitdiffstats
path: root/sys/geom/geom_subr.c
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>2004-02-14 17:58:57 +0000
committerphk <phk@FreeBSD.org>2004-02-14 17:58:57 +0000
commit14df0ab802fa99c6a6879ab2191050793193ce65 (patch)
tree838ca268c35fba5a9a85c8967950c97f7cc3253a /sys/geom/geom_subr.c
parent9e1fc5a67845eb73b88deda13cb99261ffd586e8 (diff)
downloadFreeBSD-src-14df0ab802fa99c6a6879ab2191050793193ce65.zip
FreeBSD-src-14df0ab802fa99c6a6879ab2191050793193ce65.tar.gz
Add a KASSERT which checks that a class never fails a closing ->access()
call.
Diffstat (limited to 'sys/geom/geom_subr.c')
-rw-r--r--sys/geom/geom_subr.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/geom/geom_subr.c b/sys/geom/geom_subr.c
index b6a9c7f..69a972d 100644
--- a/sys/geom/geom_subr.c
+++ b/sys/geom/geom_subr.c
@@ -627,6 +627,9 @@ g_access(struct g_consumer *cp, int dcr, int dcw, int dce)
/* Ok then... */
error = pp->geom->access(pp, dcr, dcw, dce);
+ KASSERT(dcr > 0 || dcw > 0 || dce > 0 || error == 0,
+ ("Geom provider %s::%s failed closing ->access()",
+ pp->geom->class->name, pp->name));
if (!error) {
/*
* If we open first write, spoil any partner consumers.
OpenPOWER on IntegriCloud