Date: Mon, 19 Jul 2004 11:43:14 -0600 From: Scott Long <scottl@freebsd.org> To: Pawel Jakub Dawidek <pjd@freebsd.org> Cc: freebsd-current@freebsd.org Subject: Re: Unloading USB driver while device is attached. Message-ID: <40FC0832.3040805@freebsd.org> In-Reply-To: <20040719173819.GI57678@darkness.comp.waw.pl> References: <20040719145745.GH57678@darkness.comp.waw.pl> <20040719102139.N59702@carver.gumbysoft.com> <20040719173819.GI57678@darkness.comp.waw.pl>
next in thread | previous in thread | raw e-mail | index | archive | help
Pawel Jakub Dawidek wrote: > On Mon, Jul 19, 2004 at 10:23:16AM -0700, Doug White wrote: > +> Theres a discussion going on in -arch about making kldunload a bit more > +> careful about cleaning up before detaching. In the interim adding a > +> method that just vetos any unload request would prevent this from > +> occuring, but also preclude unloading the driver. :) > > Yeah, but even on 'kldunload -f' it should be possible to clean up > and avoid panic on next load. > What usually happens in that a timeout happens and the driver handler no longer exists (i.e. forgot to call untimeout), or an interrupt happens and the driver forgot to deregister the interrupt. There are also a lot of rase possibilities in here even if the driver attempts to do the right thing. There really isn't a 'one size fits all' way to deal with this kind of thing. The driver author needs to build quiesce and shutdown semantics into the driver design. Scott
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?40FC0832.3040805>