From: Emil Velikov Date: Fri, 6 Sep 2024 21:48:40 +0000 (+0100) Subject: libkmod: remove the "Ugly assignment + check." X-Git-Tag: v34~392 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6bfd74a9b63570879e054d904c239721f79457c5;p=thirdparty%2Fkmod.git libkmod: remove the "Ugly assignment + check." Check if the module is blacklisted first and then perform the individual flag checks. As result drop the no-longer needed comment. This might be a dozen CPU cycles slower, but overall clarity triumphs. Signed-off-by: Emil Velikov Link: https://github.com/kmod-project/kmod/pull/112 Signed-off-by: Lucas De Marchi --- diff --git a/libkmod/libkmod-module.c b/libkmod/libkmod-module.c index 1d50df03..10e58cee 100644 --- a/libkmod/libkmod-module.c +++ b/libkmod/libkmod-module.c @@ -1072,17 +1072,15 @@ KMOD_EXPORT int kmod_module_probe_insert_module(struct kmod_module *mod, return 0; } - /* - * Ugly assignment + check. We need to check if we were told to check - * blacklist and also return the reason why we failed. - * KMOD_PROBE_APPLY_BLACKLIST_ALIAS_ONLY will take effect only if the - * module is an alias, so we also need to check it - */ - if ((mod->alias != NULL && ((err = flags & KMOD_PROBE_APPLY_BLACKLIST_ALIAS_ONLY))) - || (err = flags & KMOD_PROBE_APPLY_BLACKLIST_ALL) - || (err = flags & KMOD_PROBE_APPLY_BLACKLIST)) { - if (module_is_blacklisted(mod)) - return err; + if (module_is_blacklisted(mod)) { + if (mod->alias != NULL && (flags & KMOD_PROBE_APPLY_BLACKLIST_ALIAS_ONLY)) + return KMOD_PROBE_APPLY_BLACKLIST_ALIAS_ONLY; + + if (flags & KMOD_PROBE_APPLY_BLACKLIST_ALL) + return KMOD_PROBE_APPLY_BLACKLIST_ALL; + + if (flags & KMOD_PROBE_APPLY_BLACKLIST) + return KMOD_PROBE_APPLY_BLACKLIST; } err = kmod_module_get_probe_list(mod,