Paul Durrant wrote: > On 2/23/07, Garrett D'Amore <[EMAIL PROTECTED]> wrote: >> Just to be clear, the callpath (with some middle bits elided) looks >> like: >> >> modunload(1M) --> via ioctl --> _fini() --> mod_remove(9F) --> (for >> each instance) xxx_detach(9e) >> > > This is not always true. E.g. if the driver has outstanding dev_ts > then detach(9e) will not be called since the framework can determine > the driver is busy without asking it.
Good point. This is determined by the getinfo(9e) routine. :-) Except for some STREAMs devices, which under Solaris 10 and later use a somewhat different technique. > > It's worth noting that, with a DEBUG kernel, there's effectively a > 'modunload -i 0' happening about every 30 seconds anyway. Also good point. Even on a non-debug kernel this happens at system startup once the system has booted. (Mainly to unload any drivers that came in strictly due to a boot -r.) -- Garrett -- Garrett D'Amore, Principal Software Engineer Tadpole Computer / Computing Technologies Division, General Dynamics C4 Systems http://www.tadpolecomputer.com/ Phone: 951 325-2134 Fax: 951 325-2191 _______________________________________________ driver-discuss mailing list driver-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/driver-discuss