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

Reply via email to