]> git.ipfire.org Git - thirdparty/kmod.git/blame - TODO
libkmod-module: Don't pass NULL ctx to kmod_log
[thirdparty/kmod.git] / TODO
CommitLineData
bf89f76e 1Features:
5e690c5c 2=========
bf89f76e 3
46939ec7
LDM
4* Implement actions in kmod tool like 'insert', 'remove', 'info', etc
5
80e54cb6 6* testsuite:
80e54cb6 7 - when fake delete_module() succeeds, remove its entry from /sys/module
c8c956b1 8
46939ec7
LDM
9* Stop using system() inside the library and use fork + exec instead
10
11* config: configs that do not need to be matched by fnmatch() could be using a
12 vector instead of a list. This way we could search in it by calling
13 bsearch().
14
c8c956b1 15* review API, maybe unify all of these getters:
674f8590
GSB
16 - kmod_module_version_get_symbol()
17 - kmod_module_version_get_crc()
18 - kmod_module_symbol_get_symbol()
19 - kmod_module_symbol_get_crc()
20 - kmod_module_dependency_symbol_get_symbol()
21 - kmod_module_dependency_symbol_get_crc()
22 - kmod_module_versions_free_list()
23 - kmod_module_symbols_free_list()
8836ff24 24 - kmod_module_dependency_symbols_free_list()
674f8590 25
80e54cb6
LDM
26* index: drop the "open(), seek(), read()" implementation and use another one
27 with mmap(). When lookup() is called and the file is not mmaped, mmap it.
5e690c5c 28
cc833644
LDM
29* Finish removal of "rmmod -w" when it's gone from kernel.
30
31* Deprecate not using KMOD_REMOVE_NOWAIT on libkmod.
8447b865 32
3af535c9 33Things to be added/removed in kernel (check what is really needed):
5e690c5c
LDM
34===================================================================
35
36* list of currently loaded modules
80e54cb6
LDM
37 - readdir() in /sys/modules: dir without a 'initstate' file means the
38 module is builtin.
5e690c5c 39
5e690c5c 40* kill /proc/modules ?
758428a7 41 - Unlikely, given other tools might depend on it
5a96c5f1 42
46939ec7
LDM
43
44
5a96c5f1
LDM
45Things that are different from module-init-tools on purpose (!TODO)
46===================================================================
47
48modprobe
49--------
50
51* 'modprobe -l' was marked as deprecated and does not exist anymore
52
53* 'modprobe -t' is gone, together with 'modprobe -l'
54
80e54cb6 55* there's and additional '--remove-dependencies' flags to modprobe so we
5a96c5f1
LDM
56 can remove modules depending on that one
57
80e54cb6
LDM
58* modprobe doesn't parse configuration files with names not ending in
59 '.alias' or '.conf'. modprobe used to warn about these files.
5a96c5f1 60
80e54cb6 61* modprobe doesn't parse 'config' and 'include' commands in configuration
0ad5dd08
LDM
62 files.
63
f564394f
LDM
64* modprobe from m-i-t does not honour softdeps for install commands. E.g.:
65 config:
66
67 install bli "echo bli"
68 install bla "echo bla"
69 softdep bla pre: bli
70
71 With m-i-t, the output of 'modprobe --show-depends bla' will be:
72 install "echo bla"
73
74 While with kmod:
75 install "echo bli"
76 install "echo bla"
77
bc43496a
LDM
78* kmod doesn't dump the configuration as is in the config files. Instead it
79 dumps the configuration as it was parsed. Therefore, comments and file names
80 are not dumped, but on the good side we know what the exact configuration
81 kmod is using. We did this because if we only want to know the entire content
82 of configuration files, it's enough to use find(1) in modprobe.d directories
83
5a96c5f1
LDM
84depmod
85------
86
87* there's no 'depmod -m' option: legacy modules.*map files are gone
e85b6731
LDM
88
89lsmod
90-----
91
92* information is parsed from /sys instead of /proc/modules