dracut: fix early microcode stuff on non-x86 + other arch fixes
This commit is contained in:
parent
354e34d570
commit
bd7f6b448d
|
@ -0,0 +1,32 @@
|
|||
From 0e6859c98a90a1b44abc6f29ba64628afc1be7cb Mon Sep 17 00:00:00 2001
|
||||
From: q66 <daniel@octaforge.org>
|
||||
Date: Sat, 25 Jul 2020 17:29:23 +0200
|
||||
Subject: [PATCH 3/4] mkinitrd-dracut.sh: use vmlinux regex for ppc*, vmlinuz
|
||||
for i686
|
||||
|
||||
Previously this would not catch ppc64le, now it does; same with
|
||||
i686.
|
||||
---
|
||||
mkinitrd-dracut.sh | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git mkinitrd-dracut.sh mkinitrd-dracut.sh
|
||||
index 82d90684..1ea3e514 100755
|
||||
--- mkinitrd-dracut.sh
|
||||
+++ mkinitrd-dracut.sh
|
||||
@@ -57,10 +57,10 @@ default_kernel_images() {
|
||||
s390|s390x)
|
||||
regex='image'
|
||||
;;
|
||||
- ppc|ppc64)
|
||||
+ ppc*)
|
||||
regex='vmlinux'
|
||||
;;
|
||||
- i386|x86_64)
|
||||
+ i*86|x86_64)
|
||||
regex='vmlinuz'
|
||||
;;
|
||||
arm*)
|
||||
--
|
||||
2.27.0
|
||||
|
|
@ -0,0 +1,57 @@
|
|||
From d690d736a71e18711b94098da24f56b392c7e6f7 Mon Sep 17 00:00:00 2001
|
||||
From: q66 <daniel@octaforge.org>
|
||||
Date: Sat, 25 Jul 2020 17:28:16 +0200
|
||||
Subject: [PATCH 2/4] 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
|
||||
---
|
||||
dracut.sh | 23 +++++++++++++++--------
|
||||
1 file changed, 15 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git dracut.sh dracut.sh
|
||||
index 58ff24d1..cd3fcbe2 100755
|
||||
--- dracut.sh
|
||||
+++ 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)
|
||||
--
|
||||
2.27.0
|
||||
|
|
@ -0,0 +1,25 @@
|
|||
From e1bce654f1bd739cf1f975ff0a1f766221c3d4ee Mon Sep 17 00:00:00 2001
|
||||
From: q66 <daniel@octaforge.org>
|
||||
Date: Sat, 25 Jul 2020 17:20:40 +0200
|
||||
Subject: [PATCH 1/4] dracut.sh: fix ia32 detection for uefi executables
|
||||
|
||||
---
|
||||
dracut.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git dracut.sh dracut.sh
|
||||
index e3195499..58ff24d1 100755
|
||||
--- dracut.sh
|
||||
+++ dracut.sh
|
||||
@@ -1153,7 +1153,7 @@ if [[ ! $print_cmdline ]]; then
|
||||
case $(uname -m) in
|
||||
x86_64)
|
||||
EFI_MACHINE_TYPE_NAME=x64;;
|
||||
- ia32)
|
||||
+ i*86)
|
||||
EFI_MACHINE_TYPE_NAME=ia32;;
|
||||
*)
|
||||
dfatal "Architecture '$(uname -m)' not supported to create a UEFI executable"
|
||||
--
|
||||
2.27.0
|
||||
|
|
@ -0,0 +1,37 @@
|
|||
From c26b5c7559c297aaa6c78787fa8de18bbf090205 Mon Sep 17 00:00:00 2001
|
||||
From: q66 <daniel@octaforge.org>
|
||||
Date: Sat, 25 Jul 2020 17:47:00 +0200
|
||||
Subject: [PATCH 4/4] 90ppcmac: respect DRACUT_ARCH, don't exclude ppcle
|
||||
|
||||
---
|
||||
modules.d/90ppcmac/module-setup.sh | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git modules.d/90ppcmac/module-setup.sh modules.d/90ppcmac/module-setup.sh
|
||||
index 59221ec4..7199dd9b 100644
|
||||
--- modules.d/90ppcmac/module-setup.sh
|
||||
+++ modules.d/90ppcmac/module-setup.sh
|
||||
@@ -17,9 +17,9 @@
|
||||
|
||||
# called by dracut
|
||||
check() {
|
||||
- local _arch="$(uname -m)"
|
||||
+ local _arch=${DRACUT_ARCH:-$(uname -m)}
|
||||
# only for PowerPC Macs
|
||||
- [[ "$_arch" == ppc* && "$_arch" != ppc*le ]] || return 1
|
||||
+ [[ "$_arch" == ppc* && "$_arch" != ppc64le ]] || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
@@ -36,7 +36,7 @@ installkernel() {
|
||||
}
|
||||
|
||||
# only PowerMac3,6 has a module, special case
|
||||
- if [[ "$(uname -m)" == ppc ]]; then
|
||||
+ if [[ "${DRACUT_ARCH:-$(uname -m)}" != ppc64* ]]; then
|
||||
if ! [[ $hostonly ]] || [[ "$(pmac_model)" == "PowerMac3,6" ]]; then
|
||||
instmods therm_windtunnel
|
||||
fi
|
||||
--
|
||||
2.27.0
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
# Template file for 'dracut'
|
||||
pkgname=dracut
|
||||
version=050
|
||||
revision=2
|
||||
revision=3
|
||||
build_style=configure
|
||||
configure_args="--prefix=/usr --sysconfdir=/etc"
|
||||
conf_files="/etc/dracut.conf"
|
||||
|
|
Loading…
Reference in New Issue