Re: [idea] request_module(const char *fmt, ...);

From: Pavel Machek (pavel@suse.cz)
Date: Wed Jan 12 2000 - 16:48:36 EST


Hi!

> > I'd be inclined to change request_module to take multiple arguments, but still
> > to leave it defined as a NOP in the !CONFIG_KMOD case. That way, all the code
> > gets cleaned up, but you don't incur the extra function call cost.
>
> No, because that would make everything that includes kmod.h depend on
> CONFIG_KMOD. The best way we found so far (based on Keith's

Is that really problem? Extra function call cost is small, but

*) that if () is then compiled in, also

*) it's _runtime_ cost is small, but it is still unneccessary bytes in
kernel.

> to have just one request_module() function which treats variable arguments
> and is reduced to return -EINVAL if CONFIG_KMOD is not defined. This way
> all the knowledge about CONFIG_KMOD is concentrated in kmod.c. Also,
> kmod.h header should vanish and request_module() live in module.h
>
> > I appreciate that the cost of that function call isn't exactly high - but it's
> > not exactly necessary either. When you change to/from CONFIG_KMOD, you expect
> > to have to recompile some files. It's not the end of the world.
>
> It may well be the end of the world, if you only have 4 seconds to repair
> some nuclear missile system (powered by Linux) and recompiling the whole
> kernel will take 25.1 seconds if everything depends on
> CONFIG_KMOD....

You are not going to save the world by nuclear missile system...

> > Except in exceptional cases, run-time performance is far more important than
> > compilation time, surely?
>
> those exceptional cases, e.g. loading a binary will be given a bit more
> thought and performance analysis. If we find less than 0.01% degradation
> then the beauty argument wins. (I hope).

You forgot about kernel _size_.
                                                                Pavel

-- 
I'm pavel@ucw.cz. "In my country we have almost anarchy and I don't care."
Panos Katsaloulis describing me w.r.t. patents me at discuss@linmodems.org

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



This archive was generated by hypermail 2b29 : Sat Jan 15 2000 - 21:00:25 EST