https://bugzilla.novell.com/show_bug.cgi?id=868397
https://bugzilla.novell.com/show_bug.cgi?id=868397#c0
Summary: dracut's mkinitrd broken wrt. INITRD_MODULES
Classification: openSUSE
Product: openSUSE Factory
Version: 13.2 Milestone 0
Platform: Other
OS/Version: Other
Status: NEW
Severity: Critical
Priority: P5 - None
Component: Basesystem
AssignedTo: bnc-team-screening@forge.provo.novell.com
ReportedBy: seife@novell.slipkontur.de
QAContact: qa-bugs@suse.de
CC: trenn@suse.com
Found By: Third Party Developer/Partner
Blocker: ---
Stefan Seyfried changed:
What |Removed |Added
----------------------------------------------------------------------------
Flag| |SHIP_STOPPER?
susi:~ # mkinitrd
Creating: target|kernel|dracut args
Unknown arguments: /boot/initrd-3.14.0-rc5-1-default 3.14.0-rc5-1-default
Usage: /usr/bin/dracut [OPTION]... [<initramfs> [<kernel-version>]]
Version: 036-5.1
Creates initial ramdisk images for preloading modules
-h, --help Display all options
If a [LIST] has multiple arguments, then you have to put these in quotes.
For example:
# dracut --add-drivers "module1 module2" ...
Unknown arguments: /boot/initrd-3.14.0-rc6-3.gd1a7ba5-desktop
3.14.0-rc6-3.gd1a7ba5-desktop
Usage: /usr/bin/dracut [OPTION]... [<initramfs> [<kernel-version>]]
Version: 036-5.1
Creates initial ramdisk images for preloading modules
-h, --help Display all options
If a [LIST] has multiple arguments, then you have to put these in quotes.
For example:
# dracut --add-drivers "module1 module2" ...
using "bash -x":
..
+ '[' -n 'processor thermal fan' ']'
+ dracut --logfile /var/log/YaST2/mkinitrd.log --hostonly --force --add-drivers
'"processor' thermal 'fan"' /boot/initrd-3.14.0-rc6-3.gd1a7ba5-desktop
3.14.0-rc6-3.gd1a7ba5-desktop
Unknown arguments: /boot/initrd-3.14.0-rc6-3.gd1a7ba5-desktop
3.14.0-rc6-3.gd1a7ba5-desktop
Usage: /usr/bin/dracut [OPTION]... [<initramfs> [<kernel-version>]]
Version: 036-5.1
Creates initial ramdisk images for preloading modules
-h, --help Display all options
If a [LIST] has multiple arguments, then you have to put these in quotes.
For example:
# dracut --add-drivers "module1 module2" ...
+ (( i++ ))
ok, broken quoting.
fix:
susi:~ # diff -u /sbin/mkinitrd.bak /sbin/mkinitrd
--- /sbin/mkinitrd.bak 2014-03-11 20:33:27.000000000 +0100
+++ /sbin/mkinitrd 2014-03-14 10:55:06.155754920 +0100
@@ -337,13 +337,13 @@
# -> dracut bug workarounded ugly, because of complex whitespace
# expansion magics
if [ -n "${modules_all}" ];then
- $dracut_cmd $dracut_args --add-drivers \"${modules_all}\"
"$target" "$kernel" &>/dev/null
+ $dracut_cmd $dracut_args --add-drivers "${modules_all}" "$target"
"$kernel" &>/dev/null
else
$dracut_cmd $dracut_args "$target" "$kernel" &>/dev/null
fi
else
if [ -n "${modules_all}" ];then
- $dracut_cmd $dracut_args --add-drivers \"${modules_all}\"
"$target" "$kernel"
+ $dracut_cmd $dracut_args --add-drivers "${modules_all}" "$target"
"$kernel"
else
$dracut_cmd $dracut_args "$target" "$kernel"
fi
Since it looks like this was obviously never tested before submitting to
Factory, but I'm not able to parse the code at all, I'm not creating a submit
request with the obvious fix, but instead am opening this report.
This is a critical bug, since after a kernel update, there will be no initrd to
boot from.
--
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.