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