From: Daan De Meyer Date: Thu, 7 Dec 2023 12:32:53 +0000 (+0100) Subject: Fix filter_kernel_modules() X-Git-Tag: v20~104^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a9aeaf6d10ef311ee73c90f013f83aba3dadda79;p=thirdparty%2Fmkosi.git Fix filter_kernel_modules() Make sure we skip the include/exclude logic if no filters are defined. --- diff --git a/mkosi/kmod.py b/mkosi/kmod.py index 22bc35074..742238884 100644 --- a/mkosi/kmod.py +++ b/mkosi/kmod.py @@ -29,23 +29,24 @@ def filter_kernel_modules( include = [*include, *loaded_modules()] keep = set() - - regex = re.compile("|".join(include)) - for m in modules: - rel = os.fspath(m.relative_to(modulesd / "kernel")) - if regex.search(rel): - logging.debug(f"Including module {rel}") - keep.add(rel) - - regex = re.compile("|".join(exclude)) - remove = set() - for m in modules: - rel = os.fspath(m.relative_to(modulesd / "kernel")) - if rel not in keep and regex.search(rel): - logging.debug(f"Excluding module {rel}") - remove.add(m) - - modules -= remove + if include: + regex = re.compile("|".join(include)) + for m in modules: + rel = os.fspath(m.relative_to(modulesd / "kernel")) + if regex.search(rel): + logging.debug(f"Including module {rel}") + keep.add(rel) + + if exclude: + remove = set() + regex = re.compile("|".join(exclude)) + for m in modules: + rel = os.fspath(m.relative_to(modulesd / "kernel")) + if rel not in keep and regex.search(rel): + logging.debug(f"Excluding module {rel}") + remove.add(m) + + modules -= remove return sorted(modules)