Hi all; I'll try to summarize the current and proposed status of loading modules as this raises questions.
Pls correct me whereelse needed if I missed something or got it wrong. This summary is based on 5.2.x, master and new-initrd-6x branch A) The current status At the time we do have three mechanisms to load modules, which itself is is a state of transition. 1) First one is to load all hardware related modules during boot in linuxrc 2) Next we load(copy??) all modules from /etc/modules - esp. added for modules which are not hardware-related like tun.ko (openvpn), ppp*.ko etc. 3) A third mechanism has been introduced last year to add modules to load(copy??) for a given Package in buildtool.cfg in the <DependsOn> section of buildtool.cfg. This concurs with loading from /etc/modules and is intented to replace the need to add a module for a Package to /etc/modules and have loaded(copied??) instead "automagically" - like other Packages a Package depends on. Although 2) and 3) are similar loading(copying??) from /etc/modules is a welcome fallback, in case we do miss a module when building a package in buildtool.cfg. As you can see above, I'm not shure if modules in step 2 and 3 are really loaded or just copied to /lib/modules. Anyway this works, if we later start packages that need modules, they DependOn. A major drawback is that this way we do have a lot modules just copied into the RAM (although compressed). Did I get this correct so far? B) Proposed status Erich invested work to reduce the number of copied/loaded modules in the new- initrd branch to minimize RAM usage. He started to build the essential modules from initmod.lrp into the kernel - that way we can get rid off initmod.lrp at all. While it will raise the kernel size, it is hoped that we can go wihout having modules as compressed modules in /lib/modules as well as uncompressed loaded into the RAM. This effort will buy out even more if we want to support more specialized architectures/images than today. In a second step he replaced the current way to load/copy every module into /lib/modules with a mimic to work with modules.sqfs and to now really load required modules into instead insted of copy the compressed module and load afterwards. new-initrd is able to load a) hardware related modules during boot b) load modules from /etc/modules but does not work with modules defined in <DependsOn> (/var/lib/lrpkg/*.depmod) Instead it usees for shorewall the /etc/shorewall/modules* to oad all modules required modules with a modification to shorewal[6]l's init files (once again mount modules.sqfs, load modules and umount ). While this works for shorewall[6] with a well-defined configuraton, which modules to load, and therefor does not load any netfilter/xtables etc module unndeeded, and keep the necessary size in RAM as small as possible, it fails to load needed modules of packages that assumes that modules are available (like openvpn, arptables, ppp*). Erich made the proposal to change the init scripts of such packages to mount modules.sqfs and load whatever required. Another option could be to modprobe all modules in question from /var/lib/lrpkg/*depmod, but it will load more modules into than needed. I've discussed this with Erich forth and back, each one with better or worse arguments, but without a proper solution. So we decided to move the discussion to leaf-devel (again) to find a proper solution and to have as much feedback as possible. I may have been to short in describing what's possible with new-initrd, and also to describe the drawbacks - but I want to start a discussion how to deal with a) the current situation to deal with modules b) how to keep the advantages of new-initrd, while getting the best of the work we've done in the past Any input/ideas is welcome. thy kp ------------------------------------------------------------------------------ Site24x7 APM Insight: Get Deep Visibility into Application Performance APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month Monitor end-to-end web transactions and take corrective actions now Troubleshoot faster and improve end-user experience. Signup Now! http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140 _______________________________________________ leaf-devel mailing list leaf-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/leaf-devel