On Thursday 21 September 2006 14:12, Intron is my alias on the Internet wrote: > Please have a look at the function linker_reference_module() in > /sys/kern/kern_linker.c of 7.0-CURRENT. If the module is loaded on demand, > why not increase its reference counter after loading? In my opinion, > linker_reference_module() behaves differently from linker_load_file().
This is because a new kld loaded via linker_load_module() starts off with a refcount of 1. Thus, if you do: linker_reference_module(...); ... linker_release_module(...); Then with the current code the release_module() call drops the reference count to 0 and the module is unloaded. This is the desired operation for reference_module/release_module. This model is commonly used in the kernel. For example, when creating a credential, one just does 'crget()' and later a 'crfree()' to free it instead of doing 'crget(); crhold()' to create one. -- John Baldwin _______________________________________________ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "[EMAIL PROTECTED]"