From c9a89db245795132bf8c0a936121078738b7ee58 Mon Sep 17 00:00:00 2001 From: phk Date: Sat, 14 Feb 2004 17:59:44 +0000 Subject: Do not check error code from closing ->access() calls, we know they succeed. --- sys/geom/bde/g_bde.c | 4 +--- sys/geom/geom_bsd.c | 2 +- sys/geom/geom_fox.c | 11 +++++++---- 3 files changed, 9 insertions(+), 8 deletions(-) (limited to 'sys/geom') diff --git a/sys/geom/bde/g_bde.c b/sys/geom/bde/g_bde.c index 4b4e947..84a7b8b 100644 --- a/sys/geom/bde/g_bde.c +++ b/sys/geom/bde/g_bde.c @@ -226,7 +226,6 @@ g_bde_destroy_geom(struct gctl_req *req, struct g_class *mp, struct g_geom *gp) { struct g_consumer *cp; struct g_provider *pp; - int error; struct g_bde_softc *sc; g_trace(G_T_TOPOLOGY, "g_bde_destroy_geom(%s, %s)", mp->name, gp->name); @@ -244,8 +243,7 @@ g_bde_destroy_geom(struct gctl_req *req, struct g_class *mp, struct g_geom *gp) KASSERT(cp != NULL, ("NULL consumer")); sc->dead = 1; wakeup(sc); - error = g_access(cp, -1, -1, -1); - KASSERT(error == 0, ("error on close")); + g_access(cp, -1, -1, -1); g_detach(cp); g_destroy_consumer(cp); while (sc->dead != 2 && !LIST_EMPTY(&pp->consumers)) diff --git a/sys/geom/geom_bsd.c b/sys/geom/geom_bsd.c index ce74c9f..bbf4022 100644 --- a/sys/geom/geom_bsd.c +++ b/sys/geom/geom_bsd.c @@ -569,7 +569,7 @@ g_bsd_taste(struct g_class *mp, struct g_provider *pp, int flags) } while (0); /* Success or failure, we can close our provider now. */ - error = g_access(cp, -1, 0, 0); + g_access(cp, -1, 0, 0); /* If we have configured any providers, return the new geom. */ if (gsp->nprovider > 0) { diff --git a/sys/geom/geom_fox.c b/sys/geom/geom_fox.c index 2c4b3d0..d546fc3 100644 --- a/sys/geom/geom_fox.c +++ b/sys/geom/geom_fox.c @@ -90,8 +90,7 @@ g_fox_select_path(void *arg, int flag) cp1 = LIST_NEXT(sc->opath, consumer); - error = g_access(sc->opath, -sc->cr, -sc->cw, -(sc->ce + 1)); - KASSERT(error == 0, ("Failed close of old path %d", error)); + g_access(sc->opath, -sc->cr, -sc->cw, -(sc->ce + 1)); /* * The attempt to reopen it with a exclusive count @@ -290,8 +289,12 @@ g_fox_access(struct g_provider *pp, int dr, int dw, int de) g_topology_assert(); gp = pp->geom; sc = gp->softc; - if (sc == NULL) - return (ENXIO); + if (sc == NULL) { + if (dr <= 0 && dw <= 0 && de <= 0) + return (0); + else + return (ENXIO); + } if (sc->cr == 0 && sc->cw == 0 && sc->ce == 0) { /* -- cgit v1.1