From: q66 Date: Sat, 25 Jul 2020 15:28:16 +0000 (+0200) Subject: dracut.sh: fix early microcode detection logic X-Git-Tag: 051~146 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d8d5cb839cbddff7d73a12450055f14dce4ce1e2;p=thirdparty%2Fdracut.git dracut.sh: fix early microcode detection logic This fixes two issues: 1) on non-x86 systems in non-hostonly config this would cause an annoying warning on every initramfs generation 2) on non-x86 systems in hostonly config this would result in early microcode not getting disabled --- diff --git a/dracut.sh b/dracut.sh index e3195499d..d5dfa77d7 100755 --- a/dracut.sh +++ b/dracut.sh @@ -1194,19 +1194,26 @@ fi if [[ $early_microcode = yes ]]; then if [[ $hostonly ]]; then - [[ $(get_cpu_vendor) == "AMD" ]] \ - && ! check_kernel_config CONFIG_MICROCODE_AMD \ - && unset early_microcode - [[ $(get_cpu_vendor) == "Intel" ]] \ - && ! check_kernel_config CONFIG_MICROCODE_INTEL \ - && unset early_microcode + if [[ $(get_cpu_vendor) == "AMD" ]]; then + check_kernel_config CONFIG_MICROCODE_AMD || unset early_microcode + elif [[ $(get_cpu_vendor) == "Intel" ]]; then + check_kernel_config CONFIG_MICROCODE_INTEL || unset early_microcode + else + unset early_microcode + fi else ! check_kernel_config CONFIG_MICROCODE_AMD \ && ! check_kernel_config CONFIG_MICROCODE_INTEL \ && unset early_microcode fi - [[ $early_microcode != yes ]] \ - && dwarn "Disabling early microcode, because kernel does not support it. CONFIG_MICROCODE_[AMD|INTEL]!=y" + # Do not complain on non-x86 architectures as it makes no sense + case $(uname -m) in + x86_64|i?86) + [[ $early_microcode != yes ]] \ + && dwarn "Disabling early microcode, because kernel does not support it. CONFIG_MICROCODE_[AMD|INTEL]!=y" + ;; + *) ;; + esac fi # Need to be able to have non-root users read stuff (rpcbind etc)