Take the following scenario: compiled in: module A
kldstat -v shows module 'A' kldload A damned thing succeeds. e.g. [phaser.whistle.com] 516 kldstat -v Id Refs Address Size Name 1 2 0xf0100000 1c8198 kernel.try Contains modules: Id Name 1 rootbus 2 netgraph [...] 2 1 0xf07f0000 4000 netgraph.ko Contains modules: Id Name 31 netgraph this is handleable by just not loading 'A' but what about the following: kldload 'B' where B is defined to have a dependency on 'A' and 'A' is already loaded.. A get's loaded again.. leading to REALLY strange behaviour if the kernel is talking to one copy of A and B is talking to the other. I saw a suggestion from Peter to do something to change this, but I didn't understand it at the time. Now I think I saw what he was talking about. can whatever he was suggesting be done? as it is I can't win.. If I don't declare a dependency between A and B then I need to have A compiled in for B to load, but if A is loaded instead of compiled, B can't find it. If I DO declare a dependency, then if I load B it will ALWAYS load A even if it's already compiled in. as a result, the only way I can make it work is if either both A and B are compiled in or A and B are both loaded. Unfortunatly, I have some node that need to be compiled in as the infrastructure is not quite ready for them to be loaded yet, (e.g. interrupt hooking etc.) so ALL ofthe nodes need to be compiled in. Effectively, this is the same as not having KLDs. If I can't use them, what good are they? I've had a look at the code, but I think this would be a 20 minute thing for the right person, rather than a 2 day thing for me... julian To Unsubscribe: send mail to majord...@freebsd.org with "unsubscribe freebsd-current" in the body of the message