Re: Linux 2.4.21-rc3 - ipmi unresolved

Keith Owens (kaos@ocs.com.au)
Sun, 25 May 2003 17:57:21 +1000


On Fri, 23 May 2003 23:38:53 +1000,
Eyal Lebedinsky <eyal@eyal.emu.id.au> wrote:
>The exports in ksyms are still necessary, and missing:
>
>depmod: *** Unresolved symbols in
>/lib/modules/2.4.21-rc3/kernel/drivers/char/ipmi/ipmi_msghandler.o
>depmod: panic_notifier_list
>depmod: *** Unresolved symbols in
>/lib/modules/2.4.21-rc3/kernel/drivers/char/ipmi/ipmi_watchdog.o
>depmod: panic_notifier_list
>depmod: panic_timeout

Danger Will Robinson: panic notification to modules is racy.

Registering via panic_notifier_list does not bump the module use count,
a panic can occur while a module is being unloaded and you are dead.
No big deal for panic, you are already dying, but it is just a symptom
of a larger problem, yet another uncounted reference to module code.
_ANY_ notifier callback to a module is racy, think very carefully
before exporting any XXX_notifier_list.

I would go so far as to say that no XXX_notifier_list should be
exported, that includes notifier_chain_register() itself. If a module
needs to be notified then it should have glue code in the main kernel
that does try_inc_mod_count() on the module before calling any module
functions.

-
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/