The difference is when __init* is called. Initialization code compiled
into the kernel is guaranteed to be called only once then discarded.
Code in lower level modules like 8390.o is called every time a higher
level module like ne.o is loaded, which can be more than once. So we
have to be very careful about what is declared as __init. Basically
the assumptions on which __init was coded will change with module
support.
I'm not saying that there is any code declared as __init* which will
break if module supported is added, just that it needs to be checked in
every module.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/