On Fri, 21 Mar 2003, Matthew N. Dodd wrote: > On Fri, 21 Mar 2003, John-Mark Gurney wrote: > > So, the driver can: > > a) delete it's own children, but if it gets removed via > > device_delete_child, this work is already down for you. > > If you create children then you're going to be involved in removing them. > > There are helper routines that simplify some operations but I don't > believe any changes to subr_bus.c are needed.
I finally got it working.. I'm not sure exactly what I did, but I can load/unload the driver w/o crashing the machine... The bus code could use some locking in it... like you can't delete_child from child_detache... and/or better docs on how to handle children... I'm not even sure how I was doing things wrong, but I think it might of been problems with my code not calling bus_generic_detach before calling device_child_delete... Hmmm.. I'm still not sure exactly why things started behaving properly... I know a few times I was trying to delete a device that was in the process of being detached (which of course would try to detach it again)... Quite confusing.. :( Thanks for your help though. later. John-Mark To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-hackers" in the body of the message

