eb82bae272
Don't set errno in read functions ad it's a libc interface which we should not be overriding. None of the functions up the call stack (some examples) check on it. Signed-off-by: Max Kunzelmann <maxdev@posteo.de> Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org> Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com> Link: https://github.com/kmod-project/kmod/pull/240 [ Reword commit message according to suggestion by Emil and remove inline ] Signed-off-by: Lucas De Marchi <lucas.de.marchi@gmail.com> |
||
---|---|---|
.github | ||
libkmod | ||
m4 | ||
man | ||
scripts | ||
shared | ||
shell-completion | ||
testsuite | ||
tools | ||
.clang-format | ||
.codespellignore | ||
.editorconfig | ||
.gitignore | ||
.mailmap | ||
autogen.sh | ||
build-dev.ini | ||
CODING-STYLE | ||
configure.ac | ||
CONTRIBUTING.md | ||
COPYING | ||
DCO.txt | ||
Makefile.am | ||
meson_options.txt | ||
meson.build | ||
NEWS | ||
README.md |
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:
#kmod
on irc.oftc.net
Compilation and installation
In order to compile the source code you need the following software packages:
- GCC/CLANG compiler
- GNU C library / musl / uClibc
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/
Alternatively you can try autotools build. NOTE: The autotools build is slated for removal with kmod v35
./configure CFLAGS="-g -O2" --prefix=/usr \
--sysconfdir=/etc --libdir=/usr/lib
make && make install
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.