Rusty Russell wrote:
> Q: But the modules' init routine calls my register() routine which
> wants to call back into one of the function pointers immediately,
> and so try_module_get() fails! (because the module is not finished
> initializing yet)
> A: You're being called from the module, so someone already has a
> reference (unless there's a bug), so you don't need a
> try_module_get().
Hmm, I wouldn't call this the answer. How about:
- Q: why does it fail ?
- A: because you're initializing
- solution: but since you're calling from a module, and the call
goes back to the same module, you don't have to worry
This raises the question: why is this a special case ? The
registration function shouldn't have to know all these details.
(That's the whole point of try_module_get, isn't it ?)
Wouldn't it be possible to simply allow try_module_get also
while the module is initializing ?
> Well, if we continue to start modules unisolated, I need to rewrite
> the FAQ anyway...
Does "unisolated" mean that try_module_get would work ? If yes,
you've already solved the problem ;-)
- Werner
-- _________________________________________________________________________ / Werner Almesberger, Buenos Aires, Argentina wa@almesberger.net / /_http://www.almesberger.net/____________________________________________/ - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Sat Nov 30 2002 - 22:00:10 EST