panic in devstat_remove_entry
Poul-Henning Kamp
phk at phk.freebsd.dk
Fri Dec 5 13:29:40 PST 2003
In message <20031205185949.GA861 at buffy.brucec.backnet>, Bruce Cran writes:
>
>--r5Pyd7+fXNt84Ff3
>Content-Type: text/plain; charset=us-ascii
>Content-Disposition: inline
>
>I've found a way to panic 5.2-BETA which I can trigger in two ways.
Can you try with this patch ?
Index: geom_event.c
===================================================================
RCS file: /home/ncvs/src/sys/geom/geom_event.c,v
retrieving revision 1.43
diff -u -r1.43 geom_event.c
--- geom_event.c 18 Nov 2003 07:54:12 -0000 1.43
+++ geom_event.c 5 Dec 2003 21:29:03 -0000
@@ -106,8 +106,12 @@
KASSERT(error != 0,
("g_orphan_provider(%p(%s), 0) error must be non-zero\n",
pp, pp->name));
+
pp->error = error;
mtx_lock(&g_eventlock);
+ KASSERT(!(pp->flags & G_PF_ORPHAN),
+ ("g_orphan_provider(%p(%s)), already an orphan", pp, pp->name));
+ pp->flags |= G_PF_ORPHAN;
TAILQ_INSERT_TAIL(&g_doorstep, pp, orphan);
mtx_unlock(&g_eventlock);
wakeup(&g_wait_event);
--
Poul-Henning Kamp | UNIX since Zilog Zeus 3.20
phk at FreeBSD.ORG | TCP/IP since RFC 956
FreeBSD committer | BSD since 4.3-tahoe
Never attribute to malice what can adequately be explained by incompetence.
More information about the freebsd-current
mailing list