From 7367be0da935cc01dc9f7d048bcba367a147d2c7 Mon Sep 17 00:00:00 2001 From: Marcin Skarbek Date: Wed, 7 Apr 2021 19:17:39 +0200 Subject: [PATCH] Add kmodtool fix to detect different System.map location Reviewed-by: Brian Behlendorf Signed-off-by: Marcin Skarbek Closes #7807 Closes #11836 --- scripts/kmodtool | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/scripts/kmodtool b/scripts/kmodtool index 240cde310..35d54bad2 100755 --- a/scripts/kmodtool +++ b/scripts/kmodtool @@ -182,9 +182,21 @@ BuildRequires: kernel-devel-uname-r = ${kernel_uname_r} %{?KmodsRequires:Requires: %{KmodsRequires}-uname-r = ${kernel_uname_r}} %{?KmodsRequires:BuildRequires: %{KmodsRequires}-uname-r = ${kernel_uname_r}} %post -n kmod-${kmodname}-${kernel_uname_r} -${prefix}${depmod_path} -aeF /boot/System.map-${kernel_uname_r} ${kernel_uname_r} > /dev/null || : +if [[ -f "/boot/System.map-${kernel_uname_r}" ]]; then + ${prefix}${depmod_path} -aeF /boot/System.map-${kernel_uname_r} ${kernel_uname_r} > /dev/null || : +elif [[ -f "/lib/modules/${kernel_uname_r}/System.map" ]]; then + ${prefix}${depmod_path} -aeF /lib/modules/${kernel_uname_r}/System.map ${kernel_uname_r} > /dev/null || : +else + ${prefix}${depmod_path} -ae ${kernel_uname_r} &> /dev/null || : +fi %postun -n kmod-${kmodname}-${kernel_uname_r} -${prefix}${depmod_path} -aF /boot/System.map-${kernel_uname_r} ${kernel_uname_r} &> /dev/null || : +if [[ -f "/boot/System.map-${kernel_uname_r}" ]]; then + ${prefix}${depmod_path} -aF /boot/System.map-${kernel_uname_r} ${kernel_uname_r} &> /dev/null || : +elif [[ -f "/lib/modules/${kernel_uname_r}/System.map" ]]; then + ${prefix}${depmod_path} -aF /lib/modules/${kernel_uname_r}/System.map ${kernel_uname_r} &> /dev/null || : +else + ${prefix}${depmod_path} -a ${kernel_uname_r} &> /dev/null || : +fi EOF else