Date: Mon, 1 Sep 2003 00:59:58 -0600 From: "Kenneth D. Merry" <ken@kdm.org> To: Pawel Jakub Dawidek <nick@garage.freebsd.pl> Cc: phk@FreeBSD.org Subject: Re: need some debugging help Message-ID: <20030901065958.GA61417@panzer.kdm.org> In-Reply-To: <20030901002318.GF47959@garage.freebsd.pl> References: <20030830040357.GA42770@panzer.kdm.org> <20030901001345.GE47959@garage.freebsd.pl> <20030901002318.GF47959@garage.freebsd.pl>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Sep 01, 2003 at 02:23:18 +0200, Pawel Jakub Dawidek wrote: > On Mon, Sep 01, 2003 at 02:13:45AM +0200, Pawel Jakub Dawidek wrote: > +> I was getting same panics while I was working on GEOM Gate. > +> After many hours of debugging I've tracked this down - I've initialized > +> a mutex, but I haven't destroy it. > +> > +> As I susspect you're loading cd(4) as kld module? > > No, you don't need to load it as kld module, because you initiate > this mutex on every function call (and mutex is locally allocated to), > so try to put mtx_destroy() on the end of this function, this should help. > (I hope there is no problem with calling msleep(9) with mutex from stack) Well, keep in mind that this function, taskqueue_kthread(), is only called once, when the kthread is forked off. It then runs in an infinite loop forever. So far it doesn't seem like there's any problem with calling msleep() with a mutex allocated on the stack. The problem I was having turned out to be that I forgot to deference periph->softc in dasysctlinit(). Ken -- Kenneth Merry ken@kdm.org
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030901065958.GA61417>