|
|
Automatic loading of a DLKM by the kernel occurs when a user requests the functionality provided in a module and that module is not loaded. When the kernel cannot find the module in memory, it loads and link edits the module, and does any other internal ``administrative'' work that is needed. For example, the kernel autoloads a dynamically loadable device driver on the first open of any of the driver's configured devices. A loadable STREAMS module is autoloaded on the first I_PUSH of the module.
Once loaded, an HBA driver remains loaded until the next system reboot (no DLKM unload mechanism exists for HBA drivers).