There is no particular reason for us to use exit(), so just avoid it. As result, the only instances using of exit() are within the child process and our cleanup is complete :-) Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Link: https://github.com/kmod-project/kmod/pull/371 Signed-off-by: Lucas De Marchi <lucas.de.marchi@gmail.com>
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
-
Mailing list (no subscription needed): linux-modules@vger.kernel.org
-
Mailing list archives: https://lore.kernel.org/linux-modules/
-
Signed packages: http://www.kernel.org/pub/linux/utils/kernel/kmod/
-
Git:
-
License:
- LGPLv2.1+ for libkmod, testsuite and helper libraries
- GPLv2+ for tools/*
-
Irc:
#kmodon irc.oftc.net
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/
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.