dracut/0402-driver-fail-summary.patch

95 lines
2.8 KiB
Diff
Raw Normal View History

From 9e0f4d437b55ff17a0c9e3cdca5e1dcdec136ca8 Mon Sep 17 00:00:00 2001
From: Fabian Vogt <fvogt@suse.com>
Date: Tue, 3 Nov 2015 17:25:44 +0100
Subject: [PATCH] Accumulate kernel module installation failures
- Port 0169-Enabled-Warning-for-failed-kernel-modules-per-defaul.patch:
Subject: Enable warning for failed kernel moduiles
Enabled Warning for failed kernel modules per default
and added summary of those to the end of dracut output
References: bnc#886839
- Disable inline warnings in favour of summary
Signed-off-by: Fabian Vogt <fvogt@suse.com>
---
dracut-init.sh | 11 ++++-------
dracut.sh | 9 +++++++++
2 files changed, 13 insertions(+), 7 deletions(-)
Index: dracut-044/dracut-init.sh
===================================================================
--- dracut-044.orig/dracut-init.sh
+++ dracut-044/dracut-init.sh
@@ -1077,14 +1077,16 @@ instmods() {
[[ $no_kernel = yes ]] && return
# called [sub]functions inherit _fderr
local _fderr=9
- local _check=no
+ local _check=yes
local _silent=no
+
if [[ $1 = '-c' ]]; then
_check=yes
shift
fi
if [[ $1 = '-s' ]]; then
+ _check=no
_silent=yes
shift
fi
@@ -1166,7 +1168,7 @@ instmods() {
while read _mod || [ -n "$_mod" ]; do
inst1mod "${_mod%.ko*}" || {
if [[ "$_check" == "yes" ]] && [[ "$_silent" == "no" ]]; then
- dfatal "Failed to install module $_mod"
+ echo $_mod >> $tmp_dracut_failed_drivers
fi
}
done
@@ -1174,7 +1176,7 @@ instmods() {
while (($# > 0)); do # filenames as arguments
inst1mod ${1%.ko*} || {
if [[ "$_check" == "yes" ]] && [[ "$_silent" == "no" ]]; then
- dfatal "Failed to install module $1"
+ echo $1 >> $tmp_dracut_failed_drivers
fi
}
shift
Index: dracut-044/dracut.sh
===================================================================
--- dracut-044.orig/dracut.sh
+++ dracut-044/dracut.sh
@@ -390,6 +390,12 @@ verbosity_mod_l=0
unset kernel
unset outfile
+if ! tmp_dracut_failed_drivers=$(mktemp /tmp/dracut.XXXXXXXXXX); then
+ echo "Could not create temporary file"
+ exit 1
+fi
+export tmp_dracut_failed_drivers
+
rearrange_params "$@"
eval set -- "$TEMP"
@@ -1761,6 +1767,15 @@ if ! (
exit 1
fi
+if [[ -s $tmp_dracut_failed_drivers ]]; then
+ dwarn "Some kernel modules could not be included"
+ dwarn "This is not necessarily an error:"
+ while read line; do
+ dwarn "$line"
+ done < $tmp_dracut_failed_drivers
+fi
+rm $tmp_dracut_failed_drivers
+
if (( maxloglvl >= 5 )); then
if [[ $allowlocal ]]; then
"$dracutbasedir/lsinitrd.sh" "${DRACUT_TMPDIR}/initramfs.img"| ddebug