From 9ac4072b09ba614839f5d1f507483a929dec1b61 Mon Sep 17 00:00:00 2001 From: Tobias Powalowski Date: Thu, 26 Oct 2023 20:48:41 +0200 Subject: [PATCH] new faster _filter_mods --- usr/bin/archboot-cpio.sh | 1 + usr/lib/archboot/cpio/cpio.sh | 24 +++++------------------- 2 files changed, 6 insertions(+), 19 deletions(-) diff --git a/usr/bin/archboot-cpio.sh b/usr/bin/archboot-cpio.sh index 131d09540..031d0e2bd 100755 --- a/usr/bin/archboot-cpio.sh +++ b/usr/bin/archboot-cpio.sh @@ -29,6 +29,7 @@ fi _KERNELVERSION="$(_kver "${_KERNEL}")" _MODULE_DIR="/lib/modules/${_KERNELVERSION}" [[ -d "${_MODULE_DIR}" ]] || _abort "${_MODULE_DIR} is not a valid kernel module directory!" +_ALL_MODS="$(find "${_MODULE_DIR}" -name '*.ko*' 2>"${_NO_LOG}")" _BUILD_DIR="$(_init_rootfs "${_KERNELVERSION}" "${_TARGET_DIR}")" || exit 1 _ROOTFS="${_TARGET_DIR:-${_BUILD_DIR}/root}" if [[ -n "${_GENERATE_IMAGE}" ]]; then diff --git a/usr/lib/archboot/cpio/cpio.sh b/usr/lib/archboot/cpio/cpio.sh index 12783db78..a80231730 100644 --- a/usr/lib/archboot/cpio/cpio.sh +++ b/usr/lib/archboot/cpio/cpio.sh @@ -82,25 +82,11 @@ modinfo -k ${_KERNELVERSION} --field firmware $(cut -d ' ' -f1 "${_NO_LOG}" | grep -EZz "$@") - (( _COUNT )) + if [[ -z "${2}" ]]; then + grep -E "${1}" <<<"$_ALL_MODS" + else + grep -E "${3}" <<<"$_ALL_MODS" | grep -v -E "${2}" + fi } _all_mods() {