Commit Graph

10 Commits

Author SHA1 Message Date
Arne Fitzenreiter
eebce7d9a3 kmod: update rootfile
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2024-04-28 21:04:28 +00:00
Peter Müller
581e1c7a67 kmod: Update to 32
Changelog according to the tarball's NEWS file:

- Improvements

        - Use any hash algo known by kernel/openssl instead of keep needing
          to update the mapping

        - Teach kmod to load modprobe.d/depmod.d configuration from ${prefix}/lib
          and allow it to be overriden during build with --with-distconfdir=DIR

        - Make kernel modules directory configurable. This allows distro to
          make kmod use only files from /usr regardless of having a compat
          symlink in place.

        - Install kmod.pc containing the features selected at build time.

        - Install all tools and symlinks by default. Previously kmod relied on
          distro packaging to set up the symlinks in place like modprobe,
          depmod, lsmod, etc. Now those symlinks are created by kmod itself
          and they are always placed in $bindir.

- Bug Fixes

        - Fix warnings due to -Walloc-size

- Others

        - Drop python bindings. Those were not update in ages and not compatible
          with latest python releases.

        - Cleanup test infra, dropping what was not used anymore

        - Drop experimental tools `kmod insert` / `kmod remove`. Building those
          was protected by a configure option never set by distros. They also
          didn't gain enough traction to replace the older interfaces via
          modprobe/insmod/rmmod.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Reviewed-by: Adolf Belka <adolf.belka@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2024-04-28 17:23:41 +00:00
Peter Müller
de2b71f385 kmod: Update to 31
According to the source tarball's NEWS file:

- Improvements

        - Allow passing a path to modprobe so the module is loaded from
          anywhere from the filesystem, but still handling the module
          dependencies recorded in the indexes. This is mostly intended for kernel
          developers to speedup testing their kernel modules without having to load the
          dependencies manually or override the module in /usr/lib/modules/.
          Now it's possible to do:

                # modprobe ./drivers/gpu/drm/i915/i915.ko

          As long as the dependencies didn't change, this should do the right thing

        - Use in-kernel decompression if available. This will check the runtime support
          in the kernel for decompressing modules and use it through finit_module().
          Previously kmod would fallback to the older init_module() when using
          compressed modules since there wasn't a way to instruct the kernel to
          uncompress it on load or check if the kernel supported it or not.
          This requires a recent kernel (>= 6.4) to have that support and
          in-kernel decompression properly working in the kernel.

        - Make modprobe fallback to syslog when stderr is not available, as was
          documented in the man page, but not implemented

        - Better explaing `modprobe -r` and how it differentiates from rmmod

        - depmod learned a `-o <dir>` option to allow using a separate output
          directory. With this, it's possible to split the output files from
          the ones used as input from the kernel build system

        - Add compat with glibc >= 2.32.9000 that dropped __xstat

        - Improve testsuite to stop skipping tests when sysconfdir is something
          other than /etc

        - Build system improvements and updates

        - Change a few return codes from -ENOENT to -ENODATA to avoid confusing output
          in depmod when the module itself lacks a particular ELF section due to e.g.
          CONFIG_MODVERSIONS=n in the kernel.

- Bug Fixes

        - Fix testsuite using uninitialized memory when testing module removal
          with --wait

        - Fix testsuite not correctly overriding the stat syscall on 32-bit
          platforms. For most architectures this was harmless, but for MIPS it
          was causing some tests to fail.

        - Fix handling unknown signature algorithm

        - Fix linking with a static liblzma, libzstd or zlib

        - Fix memory leak when removing module holders

        - Fix out-of-bounds access when using very long paths as argument to rmmod

        - Fix warnings reported by UBSan

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
2024-01-11 11:57:59 +00:00
Peter Müller
59c6ea57fa kmod: Update to 30
Please refer to the tarballs's NEWS file for release announcements.

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Reviewed-by: Michael Tremer <michael.tremer@ipfire.org>
2022-07-29 17:04:28 +00:00
Peter Müller
ddd8d0705b kmod: Update to 29
Full changelog as given in the NEWS file:

kmod 29
=======

- Improvements
	- Add support to use /usr/local as a place for configuration files. This makes it easier
	  to install locally without overriding distro files.

- Bug fixes
	- Fix `modinfo -F` when module is builtin: when we asked by a specific field from modinfo,
	  it was not working correctly if the module was builtin

	- Documentation fixes on precedence order of /etc and /run: the correct order is
	  /etc/modprobe.d, /run/modprobe.d, /lib/modprobe.d

	- Fix the priority order that we use for searching configuration files. The
	  correct one is /etc, /run, /usr/local/lib, /lib, for both modprobe.d
	  and depmo.d

	- Fix kernel command line parsing when there are quotes present. Grub
	  mangles the command line and changes it from 'module.option="val with
	  spaces"' to '"module.option=val with spaces"'. Although this is weird
	  behavior and grub could have been fixed, the kernel understands it
	  correctly for builtin modules. So change libkmod to also parse it
	  correctly. This also brings another hidden behavior from the kernel:
	  newline in the kernel command line is also allowed and can be used to
	  separate options.

	- Fix a memory leak, overflow and double free on error path

	- Fix documentation for return value from kmod_module_get_info(): we
	  return the number of entries we added to the list

	- Fix output of modules.builtin.alias.bin index: we were writing an empty file due to
	  the misuse of kmod_module_get_info()

- Infra/internal
	- Retire integration with semaphoreci

	- Declare the github mirror also as an official upstream source: now besides accepting
	  patches via mailing list, PRs on github are also acceptable

	- Misc improvements to testsuite, so we can use it reliably regardless
	  of the configuration used: now tests will skip if we don't have the
	  build dependencies)

Signed-off-by: Peter Müller <peter.mueller@ipfire.org>
Reviewed-by: Michael Tremer <michael.tremer@ipfire.org>
2022-01-14 13:35:13 +00:00
Michael Tremer
5c21f1a078 kmod: Update to 28
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2021-01-13 11:22:59 +00:00
Michael Tremer
1ece41ec51 kmod: Update to 26
This patch links kmod against OpenSSL which is required to
decode the kernel modules' PKCS#7 signatures.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
2020-03-01 19:44:24 +00:00
Michael Tremer
b3cc1932e4 Rootfile update
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-10-31 10:56:24 +00:00
Michael Tremer
35d007f277 kmod: Update to version 25
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2018-10-21 12:43:12 +01:00
Arne Fitzenreiter
ba109afd0d kmod: replace module-init-tools by kmod-13.
newer udev depend on kmod.
2013-11-18 19:00:51 +01:00