From 5c2912350e20214989f54c28d30ad6eaaab445b4 Mon Sep 17 00:00:00 2001 From: Emil Velikov Date: Mon, 2 Sep 2024 23:20:19 +0100 Subject: [PATCH] libkmod/docs: document and reference kmod_remove Mostly move the existing documentation from kmod_module_remove_module(). Signed-off-by: Emil Velikov Link: https://github.com/kmod-project/kmod/pull/94 Signed-off-by: Lucas De Marchi --- libkmod/docs/libkmod-sections.txt | 1 + libkmod/libkmod.h | 23 +++++++++++++---------- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/libkmod/docs/libkmod-sections.txt b/libkmod/docs/libkmod-sections.txt index a8f84ca7..ad026aa2 100644 --- a/libkmod/docs/libkmod-sections.txt +++ b/libkmod/docs/libkmod-sections.txt @@ -62,6 +62,7 @@ kmod_insert kmod_module_insert_module kmod_probe kmod_module_probe_insert_module +kmod_remove kmod_module_remove_module kmod_module_get_module diff --git a/libkmod/libkmod.h b/libkmod/libkmod.h index 65a1f30d..f02001d6 100644 --- a/libkmod/libkmod.h +++ b/libkmod/libkmod.h @@ -743,24 +743,27 @@ int kmod_module_probe_insert_module(struct kmod_module *mod, void (*print_action)(struct kmod_module *m, bool install, const char *options)); -/* Removal flags */ +/** + * kmod_remove: + * @KMOD_REMOVE_FORCE: force remove module regardless if it's still in + * use by a kernel subsystem or other process; passed directly to the kernel + * @KMOD_REMOVE_NOWAIT: always set, pass O_NONBLOCK to delete_module(2); + * passed directly to the kernel + * @KMOD_REMOVE_NOLOG: when module removal fails, do not log anything; not + * passed to the kernel + * + * Removal flags, used by kmod_module_remove_module(). + */ enum kmod_remove { KMOD_REMOVE_FORCE = O_TRUNC, - KMOD_REMOVE_NOWAIT = O_NONBLOCK, /* always set */ - /* libkmod-only defines, not passed to kernel */ + KMOD_REMOVE_NOWAIT = O_NONBLOCK, KMOD_REMOVE_NOLOG = 1, }; /** * kmod_module_remove_module: * @mod: kmod module - * @flags: flags used when removing the module. - * KMOD_REMOVE_FORCE: force remove module regardless if it's still in - * use by a kernel subsystem or other process; passed directly to Linux kernel - * KMOD_REMOVE_NOWAIT: is always enforced, causing us to pass O_NONBLOCK to - * delete_module(2). - * KMOD_REMOVE_NOLOG: when module removal fails, do not log anything as the - * caller may want to handle retries and log when appropriate. + * @flags: flags used when removing the module, valid flags are #kmod_remove * * Remove a module from Linux kernel. * -- 2.47.3