kmod: Update to 31

Message ID 8cfdf33e-7931-4691-bc88-b6b71fa8e172@ipfire.org
State Staged
Commit de2b71f385f7306f1a85eb248de5ff3cbbae9b42
Headers
Series kmod: Update to 31 |

Commit Message

Peter Müller Jan. 8, 2024, 9:44 a.m. UTC
  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>
---
 config/rootfiles/common/kmod | 2 +-
 lfs/kmod                     | 6 +++---
 2 files changed, 4 insertions(+), 4 deletions(-)
  

Patch

diff --git a/config/rootfiles/common/kmod b/config/rootfiles/common/kmod
index 78971ea22..1a0432169 100644
--- a/config/rootfiles/common/kmod
+++ b/config/rootfiles/common/kmod
@@ -9,6 +9,6 @@  sbin/rmmod
 #usr/lib/libkmod.la
 #usr/lib/libkmod.so
 usr/lib/libkmod.so.2
-usr/lib/libkmod.so.2.4.0
+usr/lib/libkmod.so.2.4.1
 #usr/lib/pkgconfig/libkmod.pc
 #usr/share/bash-completion/completions/kmod
diff --git a/lfs/kmod b/lfs/kmod
index 89e196252..643573d33 100644
--- a/lfs/kmod
+++ b/lfs/kmod
@@ -1,7 +1,7 @@ 
 ###############################################################################
 #                                                                             #
 # IPFire.org - A linux based firewall                                         #
-# Copyright (C) 2007-2022  IPFire Team  <info@ipfire.org>                     #
+# Copyright (C) 2007-2024  IPFire Team  <info@ipfire.org>                     #
 #                                                                             #
 # This program is free software: you can redistribute it and/or modify        #
 # it under the terms of the GNU General Public License as published by        #
@@ -24,7 +24,7 @@ 
 
 include Config
 
-VER        = 30
+VER        = 31
 
 THISAPP    = kmod-$(VER)
 DL_FILE    = $(THISAPP).tar.xz
@@ -40,7 +40,7 @@  objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_BLAKE2 = c5cb690dbb8fad66ac603648ff330794b417ff2fa2f8f61b6e9cb76dab93f984128b3d83a826203f39f3fb94f174f0db7395db6a47e52e8b7c561486f9d00778
+$(DL_FILE)_BLAKE2 = 0dc8572da570315cf0aadd87fa7e83d0f88dea91c8566749e6f3004f9a6df916dce337ca99ea5929d41f45b408c1e3effa50f9d24615d7fa28688150a5ce91cf
 
 install : $(TARGET)