On Mon, 2010-08-23 at 07:48 -0400, Brian Gerst wrote: > > Use an exported function pointer in the main kernel as a hook that the > module sets when it is loaded. Note, you must use module_get and > module_put around the call to the module to prevent it from unloading > while in use. Please don't do any such thing, its impossible to use correctly. Suppose there are two modular users, A and B. Both have something like: extern void (*fptr)(void); static void (*old_fptr)(void); static void func(void) { /* foo */ if (old_fptr) old_fptr(); } module_init() { old_fptr = fptr; fptr = A_func; } Then you load A, load B and unload A, then guess what happens? -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html