Lucas De Marchi | bf89f76 | 2011-12-01 18:23:47 -0200 | [diff] [blame] | 1 | Features: |
Lucas De Marchi | 5e690c5 | 2011-12-16 02:02:58 -0200 | [diff] [blame] | 2 | ========= |
Lucas De Marchi | bf89f76 | 2011-12-01 18:23:47 -0200 | [diff] [blame] | 3 | |
| 4 | * config: configs that do not need to be matched by fnmatch() could be using a |
| 5 | vector instead of a list. This way we could search in it by calling |
| 6 | bsearch(). |
| 7 | |
Lucas De Marchi | c3325cf | 2011-12-02 14:49:57 -0200 | [diff] [blame] | 8 | * index: drop the "open(), seek(), read()" implementation and use another one |
| 9 | with mmap(). When lookup() is called and the file is not mmaped, mmap it. |
| 10 | |
Gustavo Sverzut Barbieri | c3d0a5f | 2011-12-11 19:36:18 -0200 | [diff] [blame] | 11 | * create test-mock library to be LD_PRELOAD'ed before running the binaries |
Gustavo Sverzut Barbieri | 7fe602b | 2011-12-10 13:32:27 -0200 | [diff] [blame] | 12 | so we're able to create unit tests |
Gustavo Sverzut Barbieri | c3d0a5f | 2011-12-11 19:36:18 -0200 | [diff] [blame] | 13 | |
Lucas De Marchi | d68ea2a | 2011-12-14 14:02:28 -0200 | [diff] [blame] | 14 | * Add functions to dump configuration |
| 15 | |
| 16 | * Add functions list all modules known by modules.dep |
| 17 | |
Lucas De Marchi | d68ea2a | 2011-12-14 14:02:28 -0200 | [diff] [blame] | 18 | * provide 1:1 compatibility with module-init-tools's modprobe |
Lucas De Marchi | d68ea2a | 2011-12-14 14:02:28 -0200 | [diff] [blame] | 19 | - dump configuration |
Lucas De Marchi | d68ea2a | 2011-12-14 14:02:28 -0200 | [diff] [blame] | 20 | |
Gustavo Sverzut Barbieri | f841e63 | 2011-12-19 11:37:08 -0200 | [diff] [blame] | 21 | * provide modules.archive, a cache file with all modules compressed |
| 22 | and a fast access. It's like a tar.gz, but with each entry |
| 23 | compressed as opposed to the whole tar compressed, easy to pick |
| 24 | individual entries, that is, more like .gz.tar. As zlib compression |
| 25 | does not store the uncompressed file size, this could provide |
| 26 | it. The file format should be something like: |
| 27 | MAGIC-ID |
| 28 | DIRECTORY-ENTRY-SIZE |
| 29 | DIRECTORY (hash-like format, points to file offset and size) |
| 30 | ENTRIES (each is a compressed module) |
| 31 | Helper binary to: |
| 32 | kmod-archive list |
| 33 | kmod-archive add path.ko |
| 34 | kmod-archive rm path.ko |
| 35 | kmod-archive get path.ko |
| 36 | kmod-archive exists path.ko |
| 37 | |
Lucas De Marchi | 5e690c5 | 2011-12-16 02:02:58 -0200 | [diff] [blame] | 38 | Known Bugs: |
| 39 | =========== |
| 40 | |
Lucas De Marchi | 5e690c5 | 2011-12-16 02:02:58 -0200 | [diff] [blame] | 41 | |
| 42 | Notes for future development: |
| 43 | ============================= |
| 44 | |
| 45 | * Kill support for /etc/modprobe.conf |
| 46 | |
| 47 | * Kill support for map files |
| 48 | |
| 49 | Things to be added removed in kernel (check what is really needed): |
| 50 | =================================================================== |
| 51 | |
| 52 | * list of currently loaded modules |
| 53 | |
| 54 | * module's size should be available under /sys |
| 55 | |
| 56 | * kill /proc/modules ? |