- Update to dracut mainline version 041. Half of the patches got integrated mainline. Some others have been merged together when it made sense some have been left out, but are still in the repository as they need some special treating and mainline discussion whether/how they get added. These are also not urgently needed, but are debugging patches. I broke the rule here to mention every added/deleted/modified patch as every patch is touched and every 2nd got removed (mainline integrated). I also re-ordered the patches in the PatchXY: area for easier merging them and get them discussed and posted mainline easier, topic by topic. OBS-URL: https://build.opensuse.org/request/show/293267 OBS-URL: https://build.opensuse.org/package/show/Base:System/dracut?expand=0&rev=214
57 lines
2.2 KiB
Diff
57 lines
2.2 KiB
Diff
From 75faba5ea84fe53df7d3ca3e4f4b6cf390c824bb Mon Sep 17 00:00:00 2001
|
|
From: Jan Loseser <jloeser@suse.de>
|
|
Date: Thu, 11 Sep 2014 15:20:23 +0200
|
|
Subject: Add SUSE kernel module dependencies (in /etc/modprobe.d/*)
|
|
|
|
bnc#895331
|
|
|
|
CC: Jan Loeser <jloeser@suse.de>
|
|
---
|
|
dracut-functions.sh | 6 +++++-
|
|
dracut.sh | 12 ++++++++++++
|
|
2 files changed, 17 insertions(+), 1 deletions(-)
|
|
|
|
Index: dracut-041/dracut-functions.sh
|
|
===================================================================
|
|
--- dracut-041.orig/dracut-functions.sh 2015-03-18 15:17:19.164428826 +0100
|
|
+++ dracut-041/dracut-functions.sh 2015-03-18 15:19:21.855346813 +0100
|
|
@@ -1740,8 +1740,14 @@
|
|
--set-version $kernel ${_moddirname} $_mpargs
|
|
((_ret+=$?))
|
|
else
|
|
- [[ $DRACUT_KERNEL_LAZY_HASHDIR ]] && \
|
|
+ if [[ $DRACUT_KERNEL_LAZY_HASHDIR ]] \
|
|
+ && [ -n "${_mod%.ko*}" ]; then
|
|
echo ${_mod%.ko*} >> "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist"
|
|
+ for suse_mod_dep in ${suse_mod_deps["${_mod%.ko*}"]}; do
|
|
+ echo $suse_mod_dep >> "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist"
|
|
+ done
|
|
+ fi
|
|
+
|
|
fi
|
|
;;
|
|
esac
|
|
Index: dracut-041/dracut.sh
|
|
===================================================================
|
|
--- dracut-041.orig/dracut.sh 2015-03-18 15:11:37.169146866 +0100
|
|
+++ dracut-041/dracut.sh 2015-03-18 15:17:19.172429202 +0100
|
|
@@ -841,6 +841,18 @@
|
|
fi
|
|
fi
|
|
|
|
+# parse SUSE kernel module dependencies
|
|
+# Kernel modules using "load_module" function may not show up in modprobe
|
|
+# depencies. While this is the case there is a workaround in SUSE which adds:
|
|
+# # SUSE_INITRD: module_name REQUIRES module1 module2 ...
|
|
+# to /etc/modprobe.d/*.conf
|
|
+declare -A suse_mod_deps
|
|
+while read -r line; do
|
|
+ _suse_mod="${line##*SUSE INITRD: }"
|
|
+ _suse_mod="${_suse_mod%% REQUIRES*}"
|
|
+ suse_mod_deps["$_suse_mod"]="${suse_mod_deps["$_suse_mod"]} ${line##*REQUIRES }"
|
|
+done <<< "$(grep -h "^# SUSE INITRD: " /etc/modprobe.d/[0-9][0-9]*.conf)"
|
|
+
|
|
# handle compression options.
|
|
[[ $compress ]] || compress="gzip"
|
|
case $compress in
|