In light of <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=19190#23>, I realized that the naïve handling of kernel modules (à la ‘insmod’) in the initrd and at boot time did not scale: one had to specify the dependencies of the modules to be loaded from the initrd and do so in topological order.
For a moment I contemplated the idea of writing libkmod bindings to do that, and then realized that using Andy’s ELF parser would get us there more quickly. So the recent commits import the ELF parser from Guile 2.1, then use it to obtain module dependency information in (gnu build linux-boot), use that dependency information to copy the closure of the user-specified modules to the initrd, and finally load the closure of the user-specified modules (à la ‘modprobe’.) Comments & bug reports welcome! I was happy to see we could get things done this quickly thanks to the ELF parser. :-) Ludo’.