1
0
Fork 0
mirror of git://git.kernel.org/pub/scm/utils/kernel/kmod/kmod.git synced 2025-12-05 22:47:14 +00:00
No description
Find a file
Emil Velikov a403590f6e ci: swap bullseye for bookworm
The former has been EOL for a bit now and somewhat recently has been
(re)moved from the repos -> our CI was failing.

Swap for bookworm, which gives us the "try a slightly older distro"
coverage, while still being green in CI.

Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
Link: https://github.com/kmod-project/kmod/pull/395
Signed-off-by: Lucas De Marchi <demarchi@kernel.org>
2025-10-26 22:37:54 -05:00
.github ci: swap bullseye for bookworm 2025-10-26 22:37:54 -05:00
libkmod libkmod/README: fix grammar 2025-06-27 10:58:35 -05:00
man tools/modprobe: Fix odd --remove-holders behavior 2025-06-16 07:36:44 -05:00
scripts testsuite/modprobe: add modprobe --show-exports modulename 2025-06-13 13:52:41 -05:00
shared Remove _always_inline_ attribute 2025-07-08 07:17:14 -05:00
shell-completion insmod: Support --force-{vermagic,modversion} arguments 2025-05-09 09:07:14 -05:00
testsuite testsuite: Fix build with gcc < 15 2025-07-13 22:18:34 -05:00
tools modprobe: return error on timeout 2025-07-07 10:20:33 -05:00
.clang-format Remove _always_inline_ attribute 2025-07-08 07:17:14 -05:00
.codespellignore ci: add more SPDX copyright/license identifiers 2024-09-27 23:08:09 -05:00
.editorconfig ci: add more SPDX copyright/license identifiers 2024-09-27 23:08:09 -05:00
.gitignore gitignore: ignore gtk-doc.m4 2024-07-03 10:14:47 -05:00
.mailmap .mailmap: Forward to my personal email 2024-06-14 13:49:03 -05:00
build-dev.ini Enable sanitizers in build-dev.ini 2024-10-18 13:22:11 -05:00
CODING-STYLE CONTRIBUTING.md: mention s-o-b tag, includ DCO copy 2024-09-16 21:49:47 -05:00
CONTRIBUTING.md CONTRIBUTING.md: make it common markdown compatible 2025-06-27 15:19:14 -05:00
COPYING Clarify what licences apply where 2014-10-09 01:26:34 -03:00
DCO.txt CONTRIBUTING.md: mention s-o-b tag, includ DCO copy 2024-09-16 21:49:47 -05:00
meson.build Globally silence all Wattribute warnings 2025-07-08 07:17:14 -05:00
meson_options.txt meson: Allow to set dlopen option for compression libraries 2024-12-06 13:15:20 -08:00
NEWS NEWS: squash a couple of typos 2025-03-11 13:44:23 -05:00
README.md testsuite: Handle KDIR=any 2025-07-07 11:07:38 -05:00

kmod - Linux kernel module handling

OVERVIEW

kmod is a set of tools to handle common tasks with Linux kernel modules like insert, remove, list, check properties, resolve dependencies and aliases.

These tools are designed on top of libkmod, a library that is shipped with kmod. See libkmod/README for more details on this library and how to use it. The aim is to be compatible with tools, configurations and indexes from module-init-tools project.

Links

Compilation and installation

In order to compile the source code you need:

  • C11 compiler, supporting a range of GNU extensions - GCC 8+, Clang 6+
  • POSIX.1-2008 C runtime library - Bionic, GNU C library, musl

Optional dependencies, required with the default build configuration:

  • ZLIB library
  • LZMA library
  • ZSTD library
  • OPENSSL library (signature handling in modinfo)

Typical configuration and installation

meson setup builddir/
meson compile -C builddir/
sudo meson install -C builddir/

For end-user and distributions builds, it's recommended to use:

meson setup --buildtype release builddir/

Hacking

When working on kmod, use the included build-dev.ini file, as:

meson setup --native-file build-dev.ini builddir/

The testsuite can be executed with:

meson test -C builddir

It builds test kernel modules, so kernel headers need to be pre-installed. By default it tries to use the kernel header for the currently running kernel. KDIR=any environment variable can be used to tell it to use any installed kernel header or KDIR=/path/to/specific/headers when a specific one is needed. Example:

KDIR=any meson test -C builddir

Make sure to read our contributing guide and the other READMEs: libkmod and testsuite.

Compatibility with module-init-tools

kmod replaced module-init-tools, which was EOL'ed in 2011. All the tools were rewritten on top of libkmod and they can be used as drop in replacements. Along the years there were a few behavior changes and new features implemented, following feedback from Linux kernel community and distros.