Partially Ordered TODO list: DONE: oprofile1) Fix rmmod to handle module offsets in /proc/modules DONE: Andi1) Fix new rmmod to set O_EXCL DONE: Petr1) Fix install mess which blows away old modutils sometimes. DONE: Petr2) Dummy insmod -p, -s and -f options. DONE: Modprobe0) Implement modprobe -c (for RH install scripts). DONE: Modprobe5) Implement modules.conf -> modprobe.conf translator DONE: depmod2) Rewrite depmod so it works with modern kernels. DONE: Kallsyms0) Fix kallsyms in modules bug (Ricky Beam's report) DONE: depmod5) Implement PCI ID support etc. DONE: Modprobe1) Release 0.8 Requires Andi1, oprofile1, depmod1, depmod2, Modprobe0, Petr1, Petr2 DONE: Modprobe2) Implement options in modprobe.conf DONE: Modprobe3) Implement install in modprobe.conf DONE: Andi2) Change module->live to module->state DONE: depmod1) Return depmod to run at "make modules_install" step. DONE: Modprobe4) Release 0.9 Requires Modprobe2 and Modprobe3 DONE: Kallsyms4) Speed up prototype script by rewriting in C. DONE: modules_install0) Return to subdirs since mkinitrd needs them Requires Modprobe1 DONE: Modprobe8) modprobe -r DONE: Rth4) Update rth's patch to handle parameters DONE: Rth5) Port rth's patch to ppc and ppc64 DONE: Rth0) Stylize Rth's patch (piss in the corners, add Rth's copyright) DONE: Rth1) Update modutils to handle rth's RT_DYN patch: extensions DONE: Modprobe9) Convert _/- on command line. DONE: Rth6) Port rth's patch to ia64 DONE: modprobe9) remove command support DONE: modprobe10) --ignore-command support DONE: depmod5) Implement -F System.map properly. DONE: Modprobe13) Restore alias wildcard support DONE: Misc4) Man pages for insmod, rmmod, modprobe, modprobe.conf DONE: Modprobe15) Implement -s (default if stderr not open). DONE: Misc6) Don't mark permenant if !exit, if also !init. DONE: depmod3) Implement .modalias support DONE: depmod4) Implement symbol: support. DONE: Modprobe7) Restore symbol: support. Requires depmod4 DONE: Modprobe8) Restore .modalias support Requires depmod3 DONE: oprofile2) Fix /proc/modules format Needs oprofile1 DONE: depmod6) GPL symbols in modules and System.map (System.map OK) DONE: depmod7) ksymtab using separate pointers rather than embedded. DONE: Kernel7) Check compiler version for modules DONE: Kernel9) ppc64 support DONE: Misc7) mini-modprobe for initramfs DONE: oprofile3) Put module location in /proc/modules Needs oprofile2, Rth7 DONE: Andi4) Show state in /proc/modules Needs oprofile2 DONE: Kernel2) Make ksymtab use strings in __ksymtab_strings section Needs depmod7 DONE: modprobe18) Create a modinfo program to extract module information. DONE: Kernel3) Cleanup: remove the extable and symbol lists. DONE: Kernel6) Documentation/modules.txt, with How To Build External Modules. DONE: Kernel8) ia64 support DONE: Andi3) Fix kernel to detect old rmmods (using O_EXCL) Needs Andi1 DONE: Adam1) Don't drop lock when rmmod O_NONBLOCK. DONE: Kallsyms1) Drop the optimization which checks against addr between _stext and _etext, as this skips __init functions on most archs. DONE: Kallsyms2) Only put in the symbols for functions (currently CONFIG_KALLSYMS=y adds 400k on my laptop: ouch!). DONE: Modprobe11) Testsuite for -a, -t and -l options DONE: Modprobe12) Testsuite for generate-modules.conf DONE: Modprobe18) Man page for modinfo Kernel1) Parameters in sysfs Kernel4) Use queues to wait on module in temporary state. Needs: Kernel 3 Kernel5) Negotiate a module initialization race solution. modprobe16) Release module-init-tools which handles both modules.dep *and* .modinfo sections. kernel9) Remove depmod call from kernel Needs modprobe16 depmod9) Test weak symbols depmod10) Test . in symbols being ignored Misc1) Add truncated module check. Misc2) Add optional warning for relocs on non-init into init sections. Misc3) Add error for exporting a previously exported symbol. Misc8) Userspace library for name <-> offset translations given module name (for oprofile and ksymoops, at last) Kallsyms3) Use a simple scheme like the mini-oopser did to reduce the symbol table size furthur (I got it down to 70k IIRC). Kallsyms5) It'd be nice if CONFIG_KALLSYMS=m worked. Modprobe13) Internationalize module-init-tools. Modprobe14) Man pages for sys_init_module and sys_delete_module.