>From aa8d4bf741fbb36c90231ec8a57a9d431c595dbe Mon Sep 17 00:00:00 2001 From: "Konstantin A. Lepikhov" Date: Wed, 6 Sep 2017 13:49:26 +0200 Subject: [PATCH] kernel.filetrigger: ucode support We need to rebuild initramfs on CPU ucode changes otherwise everything will continue use outdated version till next kernel update. --- kernel.filetrigger | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/kernel.filetrigger b/kernel.filetrigger index 9cdf01e..0a07292 100755 --- a/kernel.filetrigger +++ b/kernel.filetrigger @@ -9,6 +9,7 @@ BOOTDIR=/boot VMLINUZ_PREFIX=/boot/vmlinuz MODULES_PREFIX=/lib/modules +UCODE_PREFIX=/lib/firmware INITRD_AUTOUPDATE= . /etc/sysconfig/installkernel @@ -99,6 +100,7 @@ $VERSION" last_added="$VERSION" } +ucode_detected= while read f; do case "$f" in $VMLINUZ_PREFIX-[0-9].*-*-*) @@ -107,6 +109,9 @@ while read f; do $MODULES_PREFIX/*-*-*/*/*.ko*) handle_module "$f" ;; + $UCODE_PREFIX/*-ucode/*) + ucode_detected=1 + ;; esac done @@ -119,7 +124,13 @@ if [ -n "$kernel_versions_handled" -a "$INITRD_AUTOUPDATE" = all ]; then # regenerate initrd image without updating symlinks /sbin/installkernel $INSTALLKERNEL_ARGS --nodefault --noflavour "$VERSION" done -elif [ -n "$module_versions_handled" ]; then +elif [ -n "$module_versions_handled" -o -n "$ucode_detected" ]; then + if [ -n "$ucode_detected" ]; then + VERSION=$(uname -r) + # regenerate initrd image without updating symlinks + /sbin/installkernel $INSTALLKERNEL_ARGS --nodefault --noflavour "$VERSION" + fi + [ -n "$module_versions_handled" ] || exit 0 module_versions_handled="$(printf '%s\n' "$module_versions_handled" |sort -u)" for m in $module_versions_handled; do for k in $kernel_versions_handled; do -- 2.10.4