2001-03-14 11:35:25

by David Luyer

[permalink] [raw]
Subject: bug in 2.4.2-ac20 net/irda/af_irda.c or init/main.c


As per my previous e-mail (on l-k), built-in irda causes an infinite loop
during bootup (ie, a lockup) by double-registering the same notifier.

This happens because irda_proto_init is both called by init/main.c and set as
a module_init() function which is then mapped to __initcall when built
non-modular. So the notifier chain becomes looped as per the previous e-mail.

The fix is to remove one of these, for my system I'm moving the module_init
inside the #ifdef MODULE, someone else can choose what's best for the kernel
at large...

David.