]> git.ipfire.org Git - thirdparty/kmod.git/blame - NEWS
tools: Use test/kmod instead of kmod-nolib
[thirdparty/kmod.git] / NEWS
CommitLineData
abb910eb
LDM
1kmod 13
2=======
3
4- Bug fixes:
5 - Add the long option --symbol-prefix option to depmod (it was absent)
6 and fix its behavior
7 - Don't abort if there's a bogus line in configuration file like "alias
8 psmouse off". Some distros are carrying this since the days of
9 modutils
10
11- New features:
12 - Add support for finit_module(2). If the module is load straight from
13 the disk and without compression we use finit_module() syscall when
14 available, falling back to init_module() otherwise
15 - kmod_module_get_info() also returns the signature if the module is
16 signed and modinfo uses it
17 - Use secure_getenv if available
18 - rmmod understands builtin modules, just like modprobe does
19 - Improve compatibility with musl-libc
20 - Test cases exit with success when receiving a signal if they are
21 xfail tests
22
6feba028
LDM
23kmod 12
24=======
25
26- Bug fixes:
27 - Fix removing vermagic from module when told to force load a module
28 - Fix removing __versions section when told to force load a module: we
29 need to mangle the section header, not the section.
30 - modinfo no longer fails while loading a module from file when path
31 contains ".ko" substring
32
c599606f
LDM
33kmod 11
34=======
35
36- Improvements to testsuite:
37 - Fix testsuite defining symbols twice on 32 bit systems
38 - Allow to check generated files against correct ones
39
40- New features:
41 - libkmod now keeps a file opened after the first call to
42 kmod_module_get_{info,versions,symbols,dependency_symbols}. This
43 reduces signficantly the amount of time depmod tool takes to
44 execute. Particularly if compressed modules are used.
45 - Remove --with-rootprefix from build system. It was not a great idea
46 after all and should not be use since it causes more harm then
47 benefits.
48 - Hide --wait option on rmmod. This feature is being targeted for
49 removal from kernel. rmmod still accepts this option, but it's hidden
50 now: man page and usage() says nothing about it and if it's used,
51 user will get a 10s sleep. This way we can check and help if anyone
52 is using this feature.
53 - Refactor message logging on all tools, giving proper prefix, routing
54 everything to syslog when asked for, etc.
55
56- Bug fixes:
57 - Fix parsing of modules.order when using compressed modules
58 - Usage messages go to stdout instead of stderr
59 - Fix memory leak in hash implementation
60
40758602
LDM
61kmod 10
62=======
63
64- New features:
65 - Read coresize from /sys if supported
66
a7fbae03
JE
67 - Add flag to kmod_module_probe_insert() to apply blacklisting during
68 probe only if mod is an alias. Now modprobe uses this flag by default.
40758602 69 This is needed to fix a change in behavior regarding module-init-tools
a7fbae03 70 and ultimately makes us loading a blacklisted module.
40758602
LDM
71
72- Better formatting in man pages
73
a7fbae03 74- Add option to disable building man pages at build time
40758602 75
a7fbae03 76- Fixes in the testsuite and refactoring of LDPRELOAD'ed libraries
40758602
LDM
77
78- Re-licensing testsuite as LGPL
79
62081c0f
LDM
80kmod 9
81======
82
a7fbae03 83- Improvements to the testsuite:
62081c0f
LDM
84 - Check for correct handling of softdep loops
85 - Check for correct handling of install command loops
86
87- Bug fixes:
88 - Fix build with compilers that don't support --gc-sections
a7fbae03
JE
89 - Handle errors when dealing with gzipped modules
90 - depmod now handles errors while writing indices, so it doesn't end up
91 with a corrupted index without telling the user
62081c0f 92
46684bc2
LDM
93kmod 8
94======
95
96- No new features, small bug fixes only.
a7fbae03 97 - Fix a bug in "modprobe -c" output: be compatible with
46684bc2
LDM
98 module-init-tools
99
a7fbae03
JE
100 - Give a useful error message when init_module fails due to bad
101 parameter or unknown symbols
46684bc2
LDM
102
103 - Fix doc generation
104
8885ced0
LDM
105kmod 7
106======
107
108- Re-order dirs for configuration files to match the change in systemd and
109 udev: now the priority is:
110 1. /etc/modprobe.d
111 2. /run/modprobe.d
112 3. /lib/modprobe.d
113
a7fbae03
JE
114- Fix setting CFLAGS/LDFLAGS in build system. This prevented us from not
115 allowing the user to set his preferences.
8885ced0
LDM
116
117- Bug fixes:
118 - Return same error codes of module-init-tools when removing modules
119 with modprobe
120 - Fix builtin output in "--show-depends" when target kernel is not the
121 same of the running kernel
122 - 'modprobe -r' always look at all command line arguments
123 - Fix '-q' usage in modprobe
8885ced0 124
26906fe7
LDM
125kmod 6
126======
127
128- New API in libkmod:
129 - kmod_module_apply_filter(): a generic function to apply filters in a
130 list of modules. This deprecates the use of
131 kmod_module_get_filtered_blacklist()
132
133- More tests in testsuite
134
135- Add compatibility with uClibc again
136
137- Lookup modules.builtin.bin to decide if a module is built in kernel
138
139- Downgrade some log messages so we don't annoy people with useless messages
140
141- Bug fixes:
142 - Flag --ignore-loaded was not being properly handled
143 - Infinite loop with softdeps
144 - Infinite loop with dumb user configuration with install commands
145 - Fix leak in index when there's a partial match
146
147- Move repository and tarballs to kernel.org
148
e479598b
LDM
149kmod 5
150======
151
152- Break libkmod's API to insert a module like modprobe does. It now accepts
153 extra an extra argument to print its action and acceptable flags were
154 sanitized.
155
156- Share more code between modprobe and libkmod: using the new version of
157 kmod_module_probe_insert_module() it's possible to share a great amount of
158 code between modprobe and libkmod
159
160- modprobe no longer works with paths: it only accepts module names and/or
161 aliases now.
162
163- testsuite was added to repository, allowing automated tests to be run and
164 easing the way bugs are reproduced.
165
166- modprobe: when dumping configuration ('-c' option) separate config
167 and indexes by adding a commented line between them.
168
169- Fix bugs wrt normalizing aliases and module names
170
171- Fix bug wrt inserting an alias that resolves to multiple modules: we should
172 not stop on the first error, but rather continue to try loading other
173 modules.
174
175- Fix unaligned memory access in hash function, causing depmod to output wrong
176 information in ARMv5
177
178- Fix man page build and install: now they are only installed if tools are
179 enabled
180
b53b7e32
LDM
181kmod 4
182======
183
184- New APIs in libkmod to:
185 - Get configuration lists: blacklists, install commands, remove
186 commands, aliases, options and softdeps
187 - Dump indexes
188
189- Several bugs fixed in libkmod, modprobe, depmod and modinfo
190
191- API documentation: if configure with run with --enable-gtk-doc, the API doc
192 will be generated by make. Gtk-doc is required for that.
193
194- Man pages are built, which replace man pages from module-init-tools
195
196- 'include' and 'config' options in *.conf files were deprecated
197
198- configure is not run by autogen.sh. Instead, a common set of options is
199 printed. If you are hacking on kmod, consider using bootstrap-configure
200 script.
201
202- 'modprobe -c' works as expected now. As opposed to module-init-tools, it
203 dumps the parsed configuration, not only the file contents.
204
b30a71b8
LDM
205kmod 3
206======
207
208- New APIs in libkmod to:
209 - Get symbols from module, parsing the ELF section
210 - Get dependency symbols
211 - Check if resources are still valid or if libkmod must be reloaded
212 - Insert module like modprobe, checking (soft-)dependencies, commands,
213 blacklist. It can run commands by itself and to call a callback
214 function.
215
216- Support to load modules compressed with xz
217
218- Tools are now bundled together in a single tool called kmod. It can be
219 called using symlinks with the same names as tools from module-init-tools.
220 E.g: /usr/bin/lsmod -> /usr/bin/kmod. With this we are aiming to complete a
221 1:1 replacement of module-init-tools.
222
223- The only missing tool, depmod, was added to kmod together with the necessary
224 APIs in libkmod.
225
226- If a program using libkmod runs for a long time, as for example udev, it must
227 check if it doesn't have to re-load libkmod. A new helper function was added
228 in libkmod to check if context is still valid and udev is already using it.
229
230- An 'unaligned access' bug was fixed. So those architecture that does not
231 handle unaligned access can use kmod, too.
232
acc18b14
LDM
233kmod 2
234======
235
236Some bugs fixed: the worst of them was with an infinite loop when an alias
237matched more than one module.
238
239- New APIs in libkmod to:
240 - Get soft dependencies
241 - Get info from module files parsing ELF
242 - Get modversions from files parsing ELF
243
244- Support to load gzipped kernel modules: kmod can be compiled with support to
245 gzipped modules by giving the --enable-zlib flag
246
247- Support to forcefully load modules, both vermagic and modversion
248
249- Support to force and nowait removal flags
250
251- Configuration files are parsed in the same order as modprobe: files are
252 sorted alphabetically (independently of their dir) and files with the same
253 name obey a precedence order
254
255- New tool: kmod-modinfo
256
257- kmod-modprobe gained several features to be a 1:1 replacement for modprobe.
258 The only missing things are the options '--showconfig' and '-t / -l'. These
259 last ones have been deprecated long ago and they will be removed from
260 modprobe. A lot of effort has been put on kmod-modprobe to ensure it
261 maintains compabitility with modprobe.
262
263- linux-modules@vger.kernel.org became the official mailing list for kmod
264
89eba7cb
LDM
265kmod 1
266======
ecd40ee4 267
89eba7cb
LDM
268First version of kmod and its library, libkmod.
269
270In the libkmod it's currently possible to:
271 - List modules currently loaded
272 - Get information about loaded modules such as initstate, refcount,
273 holders, sections, address and size
274 - Lookup modules by alias, module name or path
275 - Insert modules: options from configuration and extra options can be
276 passed, but flags are not implemented, yet
277 - Remove modules
278 - Filter list of modules using blacklist
279 - For each module, get the its list of options and install/remove
280 commands
281 - Indexes can be loaded on startup to speedup lookups later
282
283Tools provided with the same set of options as in module-init-tools:
284 - kmod-lsmod
285 - kmod-insmod
286 - kmod-rmmod
287 - kmod-modprobe, with some functionality still missing (use of softdep,
288 dump configuration, show modversions)