Re: Where did vm_operations_struct->unmap in 2.4.0 go?

Keith Owens (kaos@ocs.com.au)
Fri, 12 Jan 2001 00:14:44 +1100


On Thu, 11 Jan 2001 13:09:13 +0000 (GMT),
Alan Cox <alan@lxorguk.ukuu.org.uk> wrote:
>> Stick to one method that works for all routines, dynamic registration.
>> If that imposes the occasional need for a couple of extra calls in some
>> routines and for people to think about initialisation order right from
>> the start then so be it, it is a small price to pay for long term
>> stability and ease of maintenance.
>
>What happens when we get a loop in init order because of binding and other init
>order conflicts?

The kernel does not support circular dependencies between providers and
consumers. It does not matter whether they are built into vmlinux or
loaded as modules, there can be no loops in the directed graph of
dependencies. It just does not make sense.

A while ago there was accidentally a loop between two ppp related
modules, each needed a routine in the other module. modprobe would not
load them. Even if it could have loaded them, it would have been
impossible to unload, both modules would have had a use count on the
other. The fix was to remove the incorrect loop, it was a programming
error.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/