summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLucas De Marchi <lucas.demarchi@intel.com>2022-03-29 02:05:39 -0700
committerLucas De Marchi <lucas.demarchi@intel.com>2022-04-06 22:04:38 -0700
commitd29ed6ef9f0db54acda5a51993bba7ff6f8ca7cd (patch)
tree5999d3f4bc9670f36efc3f98541ab6c74cb7e41e
parent42b32d30c38ef032f287957266a022eb28430bfc (diff)
downloadkmod-d29ed6ef9f0db54acda5a51993bba7ff6f8ca7cd.tar.gz
modprobe: move check for remove_holders to caller
Do not mix the flags with and additional boolean from arguments. Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com> Reviewed-by: Luis Chamberlain <mcgrof@kernel.org>
-rw-r--r--tools/modprobe.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/tools/modprobe.c b/tools/modprobe.c
index 32b6f7f..45952a6 100644
--- a/tools/modprobe.c
+++ b/tools/modprobe.c
@@ -418,7 +418,7 @@ static int rmmod_do_module(struct kmod_module *mod, int flags)
rmmod_do_modlist(post, false);
- if ((flags & RMMOD_FLAG_REMOVE_HOLDERS) && remove_holders) {
+ if (flags & RMMOD_FLAG_REMOVE_HOLDERS) {
struct kmod_list *holders = kmod_module_get_holders(mod);
err = rmmod_do_modlist(holders, true);
@@ -471,7 +471,9 @@ static int rmmod(struct kmod_ctx *ctx, const char *alias)
kmod_list_foreach(l, list) {
struct kmod_module *mod = kmod_module_get_module(l);
- err = rmmod_do_module(mod, RMMOD_FLAG_REMOVE_HOLDERS);
+ int flags = remove_holders ? RMMOD_FLAG_REMOVE_HOLDERS : 0;
+
+ err = rmmod_do_module(mod, flags);
kmod_module_unref(mod);
if (err < 0)
break;