diff options
author | pjd <pjd@FreeBSD.org> | 2008-05-18 22:50:50 +0000 |
---|---|---|
committer | pjd <pjd@FreeBSD.org> | 2008-05-18 22:50:50 +0000 |
commit | e225ca81386c3454ebff1842af4b0ecb5fae33e6 (patch) | |
tree | 95cbad49f1400ecf9afc5b9ff9f6ba953e5f50e2 /sys/geom | |
parent | 4ca4d6f753611083b086c33dcca2d31d36e410af (diff) | |
download | FreeBSD-src-e225ca81386c3454ebff1842af4b0ecb5fae33e6.zip FreeBSD-src-e225ca81386c3454ebff1842af4b0ecb5fae33e6.tar.gz |
- Assert that we don't send new provider event for a provider which has
G_PF_WITHER flag set.
- Fix typo in assertion condition (sorry, but I forgot who report that).
Diffstat (limited to 'sys/geom')
-rw-r--r-- | sys/geom/geom_subr.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/geom/geom_subr.c b/sys/geom/geom_subr.c index cd909c4..712ee50 100644 --- a/sys/geom/geom_subr.c +++ b/sys/geom/geom_subr.c @@ -531,6 +531,8 @@ g_new_provider_event(void *arg, int flag) return; pp = arg; G_VALID_PROVIDER(pp); + KASSERT(!(pp->flags & G_PF_WITHER), + ("g_new_provider_event but withered")); LIST_FOREACH(mp, &g_classes, class) { if (mp->taste == NULL) continue; @@ -620,7 +622,7 @@ g_destroy_provider(struct g_provider *pp) ("g_destroy_provider but attached")); KASSERT (pp->acr == 0, ("g_destroy_provider with acr")); KASSERT (pp->acw == 0, ("g_destroy_provider with acw")); - KASSERT (pp->acw == 0, ("g_destroy_provider with ace")); + KASSERT (pp->ace == 0, ("g_destroy_provider with ace")); g_cancel_event(pp); LIST_REMOVE(pp, provider); gp = pp->geom; |