From: Emil Velikov Date: Wed, 28 Jan 2026 21:05:51 +0000 (+0000) Subject: libkmod/README.md: convert to markdown X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=786f6754b148911092782d0d5b92fa115ad47d32;p=thirdparty%2Fkmod.git libkmod/README.md: convert to markdown Signed-off-by: Emil Velikov Reviewed-by: Lucas De Marchi Link: https://github.com/kmod-project/kmod/pull/pull/417 Signed-off-by: Lucas De Marchi --- diff --git a/README.md b/README.md index 7f228244..2f11d09f 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@ 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. +kmod. See libkmod/README.md 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. @@ -78,7 +78,7 @@ needed. Example: KDIR=any meson test -C builddir Make sure to read [our contributing guide](CONTRIBUTING.md) and the other -READMEs: [libkmod](libkmod/README) and [testsuite](testsuite/README.md). +READMEs: [libkmod](libkmod/README.md) and [testsuite](testsuite/README.md). Compatibility with module-init-tools ==================================== diff --git a/libkmod/README b/libkmod/README deleted file mode 100644 index f71696f5..00000000 --- a/libkmod/README +++ /dev/null @@ -1,59 +0,0 @@ -libkmod - linux kernel module handling library - -ABSTRACT -======== - -libkmod was created to allow programs to easily insert, remove and list modules, -also checking their properties, dependencies and aliases. - -The library does not keep a shared/global context information, thus it can be -used by multiple sites on a single program. One is able to use libkmod from -threads, although the user must lock explicitly, since the library is not thread -safe. - - -OVERVIEW -======== - -All users should create and manage their own library context with: - - struct kmod_ctx *ctx = kmod_new(kernel_dirname); - kmod_unref(ctx); - - -Modules can be created by various means: - - struct kmod_module *mod; - int err; - - err = kmod_module_new_from_path(ctx, path, &mod); - if (err < 0) { - /* code */ - } else { - /* code */ - kmod_module_unref(mod); - } - - err = kmod_module_new_from_name(ctx, name, &mod); - if (err < 0) { - /* code */ - } else { - /* code */ - kmod_module_unref(mod); - } - - -Or could be resolved from a known alias to a list of alternatives: - - struct kmod_list *list, *itr; - int err; - err = kmod_module_new_from_lookup(ctx, alias, &list); - if (err < 0) { - /* code */ - } else { - kmod_list_foreach(itr, list) { - struct kmod_module *mod = kmod_module_get_module(itr); - /* code */ - } - } - diff --git a/libkmod/README.md b/libkmod/README.md new file mode 100644 index 00000000..5406e9a9 --- /dev/null +++ b/libkmod/README.md @@ -0,0 +1,57 @@ +libkmod - linux kernel module handling library + +# Abstract + +libkmod was created to allow programs to easily insert, remove and list modules, +also checking their properties, dependencies and aliases. + +The library does not keep a shared/global context information, thus it can be +used by multiple sites on a single program. One is able to use libkmod from +threads, although the user must lock explicitly, since the library is not thread +safe. + + +# Overview + +All users should create and manage their own library context with: + + struct kmod_ctx *ctx = kmod_new(kernel_dirname); + kmod_unref(ctx); + + +Modules can be created by various means: + + struct kmod_module *mod; + int err; + + err = kmod_module_new_from_path(ctx, path, &mod); + if (err < 0) { + /* code */ + } else { + /* code */ + kmod_module_unref(mod); + } + + err = kmod_module_new_from_name(ctx, name, &mod); + if (err < 0) { + /* code */ + } else { + /* code */ + kmod_module_unref(mod); + } + + +Or could be resolved from a known alias to a list of alternatives: + + struct kmod_list *list, *itr; + int err; + err = kmod_module_new_from_lookup(ctx, alias, &list); + if (err < 0) { + /* code */ + } else { + kmod_list_foreach(itr, list) { + struct kmod_module *mod = kmod_module_get_module(itr); + /* code */ + } + } +