Accepting request 346361 from home:favogt:branches:Base:System

Update to dracut-044 and several cleanups.
Works on tumbleweed standard installation and NFS root.

OBS-URL: https://build.opensuse.org/request/show/346361
OBS-URL: https://build.opensuse.org/package/show/Base:System/dracut?expand=0&rev=244
This commit is contained in:
Thomas Renninger 2015-11-26 11:35:04 +00:00 committed by Git OBS Bridge
parent 0402eec464
commit 054341caad
37 changed files with 383 additions and 796 deletions

View File

@ -20,19 +20,19 @@ Signed-off-by: Hannes Reinecke <hare@suse.de>
delete mode 100644 modules.d/40network/dhclient.conf
delete mode 100755 modules.d/40network/kill-dhclient.sh
Index: dracut-042/modules.d/40network/dhclient.conf
Index: dracut-044/modules.d/40network/dhclient.conf
===================================================================
--- dracut-042.orig/modules.d/40network/dhclient.conf 2015-06-11 17:39:47.000000000 +0200
+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
--- dracut-044.orig/modules.d/40network/dhclient.conf
+++ /dev/null
@@ -1,3 +0,0 @@
-request subnet-mask, broadcast-address, time-offset, routers,
- domain-name, domain-name-servers, domain-search, host-name,
- root-path, interface-mtu;
Index: dracut-042/modules.d/40network/ifup.sh
Index: dracut-044/modules.d/40network/ifup.sh
===================================================================
--- dracut-042.orig/modules.d/40network/ifup.sh 2015-06-24 18:02:05.645160455 +0200
+++ dracut-042/modules.d/40network/ifup.sh 2015-06-24 18:02:05.945177534 +0200
@@ -86,21 +86,106 @@ else
--- dracut-044.orig/modules.d/40network/ifup.sh
+++ dracut-044/modules.d/40network/ifup.sh
@@ -87,6 +87,70 @@ else
[ -e /tmp/net.$(cat /sys/class/net/$netif/address).did-setup ] && exit 0
fi
@ -103,8 +103,9 @@ Index: dracut-042/modules.d/40network/ifup.sh
# Run dhclient
do_dhcp() {
# dhclient-script will mark the netif up and generate the online
# event for nfsroot
# XXX add -V vendor class and option parsing per kernel
@@ -98,28 +162,35 @@ do_dhcp() {
local _DHCPRETRY=$(getargs rd.net.dhcp.retry=)
_DHCPRETRY=${_DHCPRETRY:-1}
- [ -e /tmp/dhclient.$netif.pid ] && return 0
+ [ -f /tmp/leaseinfo.${netif}.dhcp.ipv${1:1:1} ] && return 0
@ -122,7 +123,7 @@ Index: dracut-042/modules.d/40network/ifup.sh
+ ip $1 addr flush dev "$netif"
if ! iface_has_link $netif; then
- echo "No carrier detected"
- warn "No carrier detected on interface $netif"
- return 1
+ warn "No carrier detected"
+ warn "Trying to set $netif up..."
@ -132,10 +133,22 @@ Index: dracut-042/modules.d/40network/ifup.sh
+ return 1
+ fi
fi
+
echo "Starting dhcp for interface $netif"
- dhclient "$@" -1 -q -cf /etc/dhclient.conf -pf /tmp/dhclient.$netif.pid -lf /tmp/dhclient.$netif.lease $netif \
- || echo "dhcp failed"
- while [ $_COUNT -lt $_DHCPRETRY ]; do
- info "Starting dhcp for interface $netif"
- dhclient "$@" \
- ${_timeout:+-timeout $_timeout} \
- -q \
- -cf /etc/dhclient.conf \
- -pf /tmp/dhclient.$netif.pid \
- -lf /tmp/dhclient.$netif.lease \
- $netif \
- && return 0
- _COUNT=$(($_COUNT+1))
- [ $_COUNT -lt $_DHCPRETRY ] && sleep 1
- done
- warn "dhcp for interface $netif failed"
- return 1
+ $dhclient --test $netif > /tmp/leaseinfo.${netif}.dhcp.ipv${1:1:1}
+ dhcp_apply $1 || return $?
+
@ -144,7 +157,7 @@ Index: dracut-042/modules.d/40network/ifup.sh
}
load_ipv6() {
@@ -226,8 +311,6 @@ if [ -e /tmp/team.info ]; then
@@ -262,8 +333,6 @@ if [ -e /tmp/team.info ]; then
fi
fi
@ -153,10 +166,10 @@ Index: dracut-042/modules.d/40network/ifup.sh
if [ -e /tmp/bridge.info ]; then
. /tmp/bridge.info
# start bridge if necessary
Index: dracut-042/modules.d/40network/kill-dhclient.sh
Index: dracut-044/modules.d/40network/kill-dhclient.sh
===================================================================
--- dracut-042.orig/modules.d/40network/kill-dhclient.sh 2015-06-11 17:39:47.000000000 +0200
+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
--- dracut-044.orig/modules.d/40network/kill-dhclient.sh
+++ /dev/null
@@ -1,15 +0,0 @@
-#!/bin/sh
-
@ -173,10 +186,10 @@ Index: dracut-042/modules.d/40network/kill-dhclient.sh
- read PID < $f;
- kill -9 $PID >/dev/null 2>&1
-done
Index: dracut-042/modules.d/40network/module-setup.sh
Index: dracut-044/modules.d/40network/module-setup.sh
===================================================================
--- dracut-042.orig/modules.d/40network/module-setup.sh 2015-06-11 17:39:47.000000000 +0200
+++ dracut-042/modules.d/40network/module-setup.sh 2015-06-24 18:02:05.949177762 +0200
--- dracut-044.orig/modules.d/40network/module-setup.sh
+++ dracut-044/modules.d/40network/module-setup.sh
@@ -1,10 +1,13 @@
#!/bin/bash

View File

@ -16,11 +16,11 @@ Modified-by: Thomas Rennigner <trenn@suse.de>
modules.d/45ifcfg/module-setup.sh | 8 +++++++-
2 files changed, 8 insertions(+), 1 deletion(-)
Index: dracut-042/modules.d/40network/ifup.sh
Index: dracut-044/modules.d/40network/ifup.sh
===================================================================
--- dracut-042.orig/modules.d/40network/ifup.sh 2015-06-24 18:02:05.945177534 +0200
+++ dracut-042/modules.d/40network/ifup.sh 2015-06-24 18:02:06.605215110 +0200
@@ -184,6 +184,7 @@ do_dhcp() {
--- dracut-044.orig/modules.d/40network/ifup.sh
+++ dracut-044/modules.d/40network/ifup.sh
@@ -189,6 +189,7 @@ do_dhcp() {
$dhclient --test $netif > /tmp/leaseinfo.${netif}.dhcp.ipv${1:1:1}
dhcp_apply $1 || return $?
@ -28,10 +28,10 @@ Index: dracut-042/modules.d/40network/ifup.sh
echo $netif > /tmp/setup_net_${netif}.ok
return 0
}
Index: dracut-042/modules.d/45ifcfg/module-setup.sh
Index: dracut-044/modules.d/45ifcfg/module-setup.sh
===================================================================
--- dracut-042.orig/modules.d/45ifcfg/module-setup.sh 2015-06-11 17:39:47.000000000 +0200
+++ dracut-042/modules.d/45ifcfg/module-setup.sh 2015-06-24 18:02:06.605215110 +0200
--- dracut-044.orig/modules.d/45ifcfg/module-setup.sh
+++ dracut-044/modules.d/45ifcfg/module-setup.sh
@@ -2,7 +2,13 @@
# called by dracut

View File

@ -17,11 +17,11 @@ Signed-off-by: Hannes Reinecke <hare@suse.de>
modules.d/40network/net-genrules.sh | 3 +++
1 file changed, 3 insertions(+)
Index: dracut-042/modules.d/40network/net-genrules.sh
Index: dracut-044/modules.d/40network/net-genrules.sh
===================================================================
--- dracut-042.orig/modules.d/40network/net-genrules.sh 2015-06-11 17:39:47.000000000 +0200
+++ dracut-042/modules.d/40network/net-genrules.sh 2015-06-24 18:02:05.357144086 +0200
@@ -96,6 +96,9 @@ command -v fix_bootif >/dev/null || . /l
--- dracut-044.orig/modules.d/40network/net-genrules.sh
+++ dracut-044/modules.d/40network/net-genrules.sh
@@ -95,6 +95,9 @@ command -v fix_bootif >/dev/null || . /l
cond='ACTION=="add", SUBSYSTEM=="net"'
# if you change the name of "91-default-net.rules", also change modules.d/80cms/cmssetup.sh
echo "$cond, $runcmd" > /etc/udev/rules.d/91-default-net.rules

View File

@ -16,11 +16,11 @@ Signed-off-by: Pawel Wieczorkiewicz <pwieczorkiewicz@suse.de>
modules.d/40network/net-genrules.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: dracut-042/modules.d/40network/net-genrules.sh
Index: dracut-044/modules.d/40network/net-genrules.sh
===================================================================
--- dracut-042.orig/modules.d/40network/net-genrules.sh 2015-06-24 18:02:05.357144086 +0200
+++ dracut-042/modules.d/40network/net-genrules.sh 2015-06-24 18:02:07.521267259 +0200
@@ -95,8 +95,8 @@ command -v fix_bootif >/dev/null || . /l
--- dracut-044.orig/modules.d/40network/net-genrules.sh
+++ dracut-044/modules.d/40network/net-genrules.sh
@@ -94,8 +94,8 @@ command -v fix_bootif >/dev/null || . /l
else
cond='ACTION=="add", SUBSYSTEM=="net"'
# if you change the name of "91-default-net.rules", also change modules.d/80cms/cmssetup.sh

View File

@ -32,12 +32,12 @@ commandline files.
Signed-off-by: Thomas Renninger <trenn@suse.de>
Index: dracut-042/dracut.cmdline.7.asc
Index: dracut-044/dracut.cmdline.7.asc
===================================================================
--- dracut-042.orig/dracut.cmdline.7.asc 2015-06-11 17:39:47.000000000 +0200
+++ dracut-042/dracut.cmdline.7.asc 2015-06-24 18:02:08.125301648 +0200
@@ -869,6 +869,21 @@ NOTE: There must be enough free RAM avai
This method is very suitable for diskless boots.
--- dracut-044.orig/dracut.cmdline.7.asc
+++ dracut-044/dracut.cmdline.7.asc
@@ -948,6 +948,21 @@ that memory is given back to the kernel
anymore.
+CIO_IGNORE
@ -58,10 +58,10 @@ Index: dracut-042/dracut.cmdline.7.asc
Plymouth Boot Splash
~~~~~~~~~~~~~~~~~~~~
**plymouth.enable=0**::
Index: dracut-042/modules.d/81cio_ignore/module-setup.sh
Index: dracut-044/modules.d/81cio_ignore/module-setup.sh
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ dracut-042/modules.d/81cio_ignore/module-setup.sh 2015-06-24 18:02:08.125301648 +0200
--- /dev/null
+++ dracut-044/modules.d/81cio_ignore/module-setup.sh
@@ -0,0 +1,40 @@
+#!/bin/bash
+# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
@ -103,10 +103,10 @@ Index: dracut-042/modules.d/81cio_ignore/module-setup.sh
+ inst_hook cmdline 20 "$moddir/parse-cio_accept.sh"
+ inst_multiple cio_ignore
+}
Index: dracut-042/modules.d/81cio_ignore/parse-cio_accept.sh
Index: dracut-044/modules.d/81cio_ignore/parse-cio_accept.sh
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ dracut-042/modules.d/81cio_ignore/parse-cio_accept.sh 2015-06-24 18:02:08.125301648 +0200
--- /dev/null
+++ dracut-044/modules.d/81cio_ignore/parse-cio_accept.sh
@@ -0,0 +1,22 @@
+#!/bin/sh
+# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-

View File

@ -20,16 +20,16 @@ the option.
Signed-off-by: Jeff Mahoney <jeffm@suse.com>
---
dracut-functions.sh | 21 +++++++++++++++++++++
dracut-init.sh | 21 +++++++++++++++++++++
dracut.8.asc | 11 +++++++++++
dracut.sh | 5 +++++
3 files changed, 37 insertions(+)
Index: dracut-042/dracut-functions.sh
Index: dracut-044/dracut-init.sh
===================================================================
--- dracut-042.orig/dracut-functions.sh 2015-06-11 17:39:47.000000000 +0200
+++ dracut-042/dracut-functions.sh 2015-06-24 18:02:08.741336717 +0200
@@ -1436,6 +1436,17 @@ for_each_module_dir() {
--- dracut-044.orig/dracut-init.sh
+++ dracut-044/dracut-init.sh
@@ -849,6 +849,17 @@ for_each_module_dir() {
done
}
@ -47,7 +47,7 @@ Index: dracut-042/dracut-functions.sh
# Install a single kernel module along with any firmware it may require.
# $1 = full path to kernel module to install
install_kmod_with_fw() {
@@ -1498,6 +1509,10 @@ install_kmod_with_fw() {
@@ -910,6 +921,10 @@ install_kmod_with_fw() {
fi
fi
done
@ -58,7 +58,7 @@ Index: dracut-042/dracut-functions.sh
return 0
}
@@ -1544,6 +1559,12 @@ dracut_kernel_post() {
@@ -956,6 +971,12 @@ dracut_kernel_post() {
inst_simple "$_modpath" "/lib/modules/$kernel/${_destpath}" || exit $?
done < "$DRACUT_KERNEL_LAZY_HASHDIR/lazylist.dep"
fi
@ -71,11 +71,11 @@ Index: dracut-042/dracut-functions.sh
) &
_pid=$(jobs -p | while read a || [ -n "$a" ]; do printf ":$a";done)
_pid=${_pid##*:}
Index: dracut-042/dracut.8.asc
Index: dracut-044/dracut.8.asc
===================================================================
--- dracut-042.orig/dracut.8.asc 2015-06-11 17:39:47.000000000 +0200
+++ dracut-042/dracut.8.asc 2015-06-24 18:02:08.741336717 +0200
@@ -479,6 +479,17 @@ will not be able to boot.
--- dracut-044.orig/dracut.8.asc
+++ dracut-044/dracut.8.asc
@@ -490,6 +490,17 @@ will not be able to boot.
Specifies the kernel image, which to include in the UEFI executable. The default is
_/lib/modules/<KERNEL-VERSION>/vmlinuz_ or _/boot/vmlinuz-<KERNEL-VERSION>_
@ -93,11 +93,11 @@ Index: dracut-042/dracut.8.asc
FILES
-----
_/var/log/dracut.log_::
Index: dracut-042/dracut.sh
Index: dracut-044/dracut.sh
===================================================================
--- dracut-042.orig/dracut.sh 2015-06-11 17:39:47.000000000 +0200
+++ dracut-042/dracut.sh 2015-06-24 18:02:08.745336946 +0200
@@ -193,6 +193,9 @@ Creates initial ramdisk images for prelo
--- dracut-044.orig/dracut.sh
+++ dracut-044/dracut.sh
@@ -203,6 +203,9 @@ Creates initial ramdisk images for prelo
--printsize Print out the module install size
--sshkey [SSHKEY] Add ssh key to initramfs (use with ssh-client module)
--logfile [FILE] Logfile to use (overrides configuration setting)
@ -105,21 +105,21 @@ Index: dracut-042/dracut.sh
+ using a kernel that is configured to check the
+ support status of a module before loading.
--reproducible Create reproducible images
--no-reproducible Do not create reproducible images
--loginstall [DIR] Log all files installed from the host to [DIR]
--uefi Create an UEFI executable with the kernel cmdline and
@@ -391,6 +394,7 @@ rearrange_params()
@@ -360,6 +363,7 @@ rearrange_params()
--long noimageifnotneeded \
--long early-microcode \
--long no-early-microcode \
+ --long check-supported \
--long reproducible \
--long no-reproducible \
--long loginstall: \
--long uefi \
@@ -583,6 +587,7 @@ while :; do
@@ -556,6 +560,7 @@ while :; do
--printsize) printsize="yes";;
--regenerate-all) regenerate_all="yes";;
--noimageifnotneeded) noimageifnotneeded="yes";;
+ --check-supported) check_supported="yes" ;;
--reproducible) reproducible_l="yes";;
--no-reproducible) reproducible_l="no";;
--uefi) uefi="yes";;
--uefi-stub)

View File

@ -16,23 +16,32 @@ Signed-off-by: Hannes Reinecke <hare@suse.de>
modules.d/40network/ifup.sh | 22 ++++++++--------------
1 file changed, 8 insertions(+), 14 deletions(-)
Index: dracut-042/modules.d/40network/ifup.sh
Index: dracut-044/modules.d/40network/ifup.sh
===================================================================
--- dracut-042.orig/modules.d/40network/ifup.sh 2015-06-11 17:39:47.000000000 +0200
+++ dracut-042/modules.d/40network/ifup.sh 2015-06-24 18:02:05.645160455 +0200
@@ -338,21 +338,15 @@ for p in $(getargs ip=); do
--- dracut-044.orig/modules.d/40network/ifup.sh
+++ dracut-044/modules.d/40network/ifup.sh
@@ -373,27 +373,20 @@ for p in $(getargs ip=); do
do_static ;;
esac
done
- ret=$?
- > /tmp/net.${netif}.up
+ if [ $? -eq 0 ]; then
+ > /tmp/net.${netif}.up
- if [ -e /sys/class/net/${netif}/address ]; then
- > /tmp/net.$(cat /sys/class/net/${netif}/address).up
- fi
+ if [ -e /sys/class/net/${netif}/address ]; then
+ > /tmp/net.$(cat /sys/class/net/${netif}/address).up
+ fi
- case $autoconf in
- dhcp|on|any|dhcp6)
- ;;
- *)
- if [ $? -eq 0 ]; then
- if [ $ret -eq 0 ]; then
- setup_net $netif
- source_hook initqueue/online $netif
- if [ -z "$manualup" ]; then

View File

@ -19,11 +19,11 @@ Signed-off-by: Hannes Reinecke <hare@suse.de>
create mode 100644 modules.d/91zipl/module-setup.sh
create mode 100644 modules.d/91zipl/parse-zipl.sh
Index: dracut-042/dracut.cmdline.7.asc
Index: dracut-044/dracut.cmdline.7.asc
===================================================================
--- dracut-042.orig/dracut.cmdline.7.asc 2015-06-24 18:02:08.125301648 +0200
+++ dracut-042/dracut.cmdline.7.asc 2015-06-24 18:02:12.621557615 +0200
@@ -884,6 +884,20 @@ CIO_IGNORE
--- dracut-044.orig/dracut.cmdline.7.asc
+++ dracut-044/dracut.cmdline.7.asc
@@ -963,6 +963,20 @@ CIO_IGNORE
rd.cio_accept=0.0.0180,0.0.0800,0.0.0801,0.0.0802
--
@ -44,10 +44,10 @@ Index: dracut-042/dracut.cmdline.7.asc
Plymouth Boot Splash
~~~~~~~~~~~~~~~~~~~~
**plymouth.enable=0**::
Index: dracut-042/modules.d/91zipl/install_zipl_cmdline.sh
Index: dracut-044/modules.d/91zipl/install_zipl_cmdline.sh
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ dracut-042/modules.d/91zipl/install_zipl_cmdline.sh 2015-06-24 18:02:12.621557615 +0200
--- /dev/null
+++ dracut-044/modules.d/91zipl/install_zipl_cmdline.sh
@@ -0,0 +1,33 @@
+#!/bin/bash
+
@ -82,10 +82,10 @@ Index: dracut-042/modules.d/91zipl/install_zipl_cmdline.sh
+> /tmp/install.zipl.cmdline-done
+
+exit 0
Index: dracut-042/modules.d/91zipl/module-setup.sh
Index: dracut-044/modules.d/91zipl/module-setup.sh
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ dracut-042/modules.d/91zipl/module-setup.sh 2015-06-24 18:02:12.621557615 +0200
--- /dev/null
+++ dracut-044/modules.d/91zipl/module-setup.sh
@@ -0,0 +1,45 @@
+#!/bin/bash
+# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
@ -132,10 +132,10 @@ Index: dracut-042/modules.d/91zipl/module-setup.sh
+ fi
+ dracut_need_initqueue
+}
Index: dracut-042/modules.d/91zipl/parse-zipl.sh
Index: dracut-044/modules.d/91zipl/parse-zipl.sh
===================================================================
--- /dev/null 1970-01-01 00:00:00.000000000 +0000
+++ dracut-042/modules.d/91zipl/parse-zipl.sh 2015-06-24 18:02:12.621557615 +0200
--- /dev/null
+++ dracut-044/modules.d/91zipl/parse-zipl.sh
@@ -0,0 +1,41 @@
+#!/bin/sh
+# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-

View File

@ -15,11 +15,11 @@ Signed-off-by: Hannes Reinecke <hare@suse.de>
modules.d/40network/parse-ip-opts.sh | 8 +++++++-
3 files changed, 24 insertions(+), 2 deletions(-)
Index: dracut-042/modules.d/40network/ifup.sh
Index: dracut-044/modules.d/40network/ifup.sh
===================================================================
--- dracut-042.orig/modules.d/40network/ifup.sh 2015-06-24 18:02:12.961576972 +0200
+++ dracut-042/modules.d/40network/ifup.sh 2015-06-24 18:02:13.849627528 +0200
@@ -399,6 +399,18 @@ for p in $(getargs ip=); do
--- dracut-044.orig/modules.d/40network/ifup.sh
+++ dracut-044/modules.d/40network/ifup.sh
@@ -421,6 +421,18 @@ for p in $(getargs ip=); do
[ "$use_bridge" != 'true' ] && \
[ "$use_vlan" != 'true' ] && continue
@ -36,9 +36,9 @@ Index: dracut-042/modules.d/40network/ifup.sh
+ fi
+
# setup nameserver
namesrv="$dns1 $dns2 $(getargs nameserver)"
for s in $namesrv; do
@@ -412,7 +424,7 @@ for p in $(getargs ip=); do
for s in "$dns1" "$dns2" $(getargs nameserver); do
[ -n "$s" ] || continue
@@ -434,7 +446,7 @@ for p in $(getargs ip=); do
for autoopt in $(str_replace "$autoconf" "," " "); do
case $autoopt in
@ -47,10 +47,10 @@ Index: dracut-042/modules.d/40network/ifup.sh
do_dhcp -4 ;;
dhcp6)
load_ipv6
Index: dracut-042/modules.d/40network/module-setup.sh
Index: dracut-044/modules.d/40network/module-setup.sh
===================================================================
--- dracut-042.orig/modules.d/40network/module-setup.sh 2015-06-24 18:02:05.949177762 +0200
+++ dracut-042/modules.d/40network/module-setup.sh 2015-06-24 18:02:13.849627528 +0200
--- dracut-044.orig/modules.d/40network/module-setup.sh
+++ dracut-044/modules.d/40network/module-setup.sh
@@ -51,6 +51,10 @@ install() {
_arch=$(uname -m)
@ -62,11 +62,11 @@ Index: dracut-042/modules.d/40network/module-setup.sh
inst_libdir_file {"tls/$_arch/",tls/,"$_arch/",}"libnss_dns.so.*" \
{"tls/$_arch/",tls/,"$_arch/",}"libnss_mdns4_minimal.so.*"
Index: dracut-042/modules.d/40network/parse-ip-opts.sh
Index: dracut-044/modules.d/40network/parse-ip-opts.sh
===================================================================
--- dracut-042.orig/modules.d/40network/parse-ip-opts.sh 2015-06-11 17:39:47.000000000 +0200
+++ dracut-042/modules.d/40network/parse-ip-opts.sh 2015-06-24 18:02:13.849627528 +0200
@@ -67,7 +67,13 @@ for p in $(getargs ip=); do
--- dracut-044.orig/modules.d/40network/parse-ip-opts.sh
+++ dracut-044/modules.d/40network/parse-ip-opts.sh
@@ -69,7 +69,13 @@ for p in $(getargs ip=); do
for autoopt in $(str_replace "$autoconf" "," " "); do
case $autoopt in
error) die "Error parsing option 'ip=$p'";;

View File

@ -1,31 +0,0 @@
From bcfdc4522d2f04d0a1fd46d80a8ac7ff357b8bc5 Mon Sep 17 00:00:00 2001
From: Hannes Reinecke <hare@suse.de>
Date: Mon, 14 Jul 2014 10:22:31 +0200
Subject: Reset IFS variable
Setting and unsetting the IFS variable is tricky. To be on the
safe side we should always reset the IFS variable to its original
value after parsing.
Signed-off-by: Hannes Reinecke <hare@suse.de>
---
modules.d/95dasd/parse-dasd.sh | 2 ++
modules.d/95fcoe/parse-fcoe.sh | 2 ++
modules.d/95zfcp/parse-zfcp.sh | 2 ++
3 files changed, 6 insertions(+)
Index: dracut-042/modules.d/95fcoe/parse-fcoe.sh
===================================================================
--- dracut-042.orig/modules.d/95fcoe/parse-fcoe.sh 2015-06-11 17:39:47.000000000 +0200
+++ dracut-042/modules.d/95fcoe/parse-fcoe.sh 2015-06-24 18:02:21.326053152 +0200
@@ -26,8 +26,10 @@ initqueue --onetime modprobe -b -q bnx2f
udevadm settle --timeout=30
parse_fcoe_opts() {
+ local OLDIFS="$IFS"
local IFS=:
set $fcoe
+ IFS="$OLDIFS"
case $# in
2)

View File

@ -1,67 +0,0 @@
From 3c4d4b2c9654e418d422b80e052bdf6d9a02a188 Mon Sep 17 00:00:00 2001
From: Thomas Renninger <trenn@suse.de>
Date: Tue, 15 Jul 2014 15:53:23 +0200
Subject: mkinitrd-suse.sh: Bail out with exit 1 if initrd cannot be generated
bnc#886630
Signed-off-by: Thomas Renninger <trenn@suse.de>
---
mkinitrd-suse.sh | 17 ++++++++++++++++-
1 file changed, 16 insertions(+), 1 deletion(-)
Index: dracut-042/mkinitrd-suse.sh
===================================================================
--- dracut-042.orig/mkinitrd-suse.sh 2015-06-11 17:39:47.000000000 +0200
+++ dracut-042/mkinitrd-suse.sh 2015-06-24 18:02:21.618069777 +0200
@@ -280,7 +280,8 @@ done
[[ $targets && $kernels ]] || default_kernel_images
if [[ ! $targets || ! $kernels ]];then
- error "No kernel found in $boot_dir"
+ error "No kernel found in $boot_dir or bad modules dir in /lib/modules"
+ exit 1
fi
# We can have several targets/kernels, transform the list to an array
@@ -301,6 +302,8 @@ fi
[[ $domu_module_list ]] || domu_module_list="${DOMU_INITRD_MODULES}"
shopt -s extglob
+failed=""
+
for ((i=0 ; $i<${#targets[@]} ; i++)); do
if [[ $img_vers ]];then
@@ -329,14 +332,18 @@ for ((i=0 ; $i<${#targets[@]} ; i++)); d
# expansion magics
if [ -n "${modules_all}" ];then
$dracut_cmd $dracut_args --force-drivers "${modules_all}" "$target" "$kernel" &>/dev/null
+ [ $? -ne 0 ] && failed="$failed $target"
else
$dracut_cmd $dracut_args "$target" "$kernel" &>/dev/null
+ [ $? -ne 0 ] && failed="$failed $target"
fi
else
if [ -n "${modules_all}" ];then
$dracut_cmd $dracut_args --force-drivers "${modules_all}" "$target" "$kernel"
+ [ $? -ne 0 ] && failed="$failed $target"
else
$dracut_cmd $dracut_args "$target" "$kernel"
+ [ $? -ne 0 ] && failed="$failed $target"
fi
fi
done
@@ -345,4 +352,12 @@ if [ "$skip_update_bootloader" ] ; then
echo 2>&1 "Did not refresh the bootloader. You might need to refresh it manually."
else
update-bootloader --refresh
+ [ $? -ne 0 ] && echo "Updating bootloader failed" && exit 1
+fi
+
+if [ "$failed" != "" ]; then
+ echo "Generating $failed targets failed"
+ exit 1
fi
+
+exit 0

View File

@ -13,11 +13,11 @@ Signed-off-by: Thomas Renninger <trenn@suse.de>
lsinitrd.sh | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
Index: dracut-042/dracut.sh
Index: dracut-044/dracut.sh
===================================================================
--- dracut-042.orig/dracut.sh 2015-06-24 18:02:08.745336946 +0200
+++ dracut-042/dracut.sh 2015-06-24 18:02:21.906086174 +0200
@@ -658,7 +658,7 @@ if ! [[ $outfile ]]; then
--- dracut-044.orig/dracut.sh
+++ dracut-044/dracut.sh
@@ -632,7 +632,7 @@ if ! [[ $outfile ]]; then
if [[ $MACHINE_ID ]] && ( [[ -d /boot/${MACHINE_ID} ]] || [[ -L /boot/${MACHINE_ID} ]] ); then
outfile="/boot/${MACHINE_ID}/$kernel/initrd"
else
@ -26,10 +26,10 @@ Index: dracut-042/dracut.sh
fi
fi
Index: dracut-042/lsinitrd.sh
Index: dracut-044/lsinitrd.sh
===================================================================
--- dracut-042.orig/lsinitrd.sh 2015-06-11 17:39:47.000000000 +0200
+++ dracut-042/lsinitrd.sh 2015-06-24 18:02:21.906086174 +0200
--- dracut-044.orig/lsinitrd.sh
+++ dracut-044/lsinitrd.sh
@@ -89,7 +89,7 @@ else
&& [[ -d /boot/${MACHINE_ID} || -L /boot/${MACHINE_ID} ]] ; then
image="/boot/${MACHINE_ID}/${KERNEL_VERSION}/initrd"

View File

@ -1,48 +0,0 @@
Index: dracut-042/mkinitrd-suse.sh
===================================================================
--- dracut-042.orig/mkinitrd-suse.sh 2015-06-24 18:02:21.618069777 +0200
+++ dracut-042/mkinitrd-suse.sh 2015-06-24 18:02:22.218103937 +0200
@@ -145,6 +145,33 @@ is_xen_kernel() {
return
}
+# kernel_image_gz_from_image() and kernel_version_from_image() are helpers
+# for arm* kernels which produce zImage files which cannot be read from
+# get_kernel_version -> get rid of this workaround if possible
+kernel_image_gz_from_image() {
+ local arch=$(uname -i)
+ local r=${1}.gz
+
+ # uImage kernels can't be extracted directly. Use the vmlinux.gz instead
+ r=${r//uImage/vmlinux}
+
+ # on ARM a zImage can't be extracted directly. Other platforms define it
+ # as a gzipped vmlinux file, but not ARM. So only on ARM, use vmlinux.gz.
+ if [[ $arch =~ arm ]] || [[ $arch =~ aarch ]]; then
+ r=${r//zImage/vmlinux}
+ fi
+
+ echo $r
+}
+
+kernel_version_from_image() {
+ local kernel_image="$1" kernel_image_gz=$(kernel_image_gz_from_image "$1")
+
+ if get_kernel_version "$kernel_image" 2>/dev/null; then
+ return
+ fi
+ get_kernel_version "$kernel_image_gz" 2>/dev/null
+}
# Taken over from SUSE mkinitrd
default_kernel_images() {
@@ -183,7 +210,8 @@ default_kernel_images() {
[ -L "$boot_dir/$kernel_image" ] && continue
[ "${kernel_image%%.gz}" != "$kernel_image" ] && continue
- kernel_version=$(/usr/bin/get_kernel_version \
+
+ kernel_version=$(kernel_version_from_image \
$boot_dir/$kernel_image 2> /dev/null)
initrd_image=$(echo $kernel_image | sed -e "s|${regex}|initrd|")
if [ "$kernel_image" != "$initrd_image" -a \

View File

@ -13,11 +13,11 @@ Signed-off-by: Hannes Reinecke <hare@suse.de>
modules.d/40network/net-lib.sh | 48 +++++++++++++++++++++++++++++++++++++-----
1 file changed, 43 insertions(+), 5 deletions(-)
Index: dracut-042/modules.d/40network/net-lib.sh
Index: dracut-044/modules.d/40network/net-lib.sh
===================================================================
--- dracut-042.orig/modules.d/40network/net-lib.sh 2015-06-11 17:39:47.000000000 +0200
+++ dracut-042/modules.d/40network/net-lib.sh 2015-06-24 18:02:22.802137185 +0200
@@ -213,20 +213,51 @@ ibft_to_cmdline() {
--- dracut-044.orig/modules.d/40network/net-lib.sh
+++ dracut-044/modules.d/40network/net-lib.sh
@@ -241,23 +241,54 @@ ibft_to_cmdline() {
[ -e /tmp/net.${dev}.has_ibft_config ] && continue
@ -53,10 +53,13 @@ Index: dracut-042/modules.d/40network/net-lib.sh
# skip not assigned ip adresses
[ "$ip" = "0.0.0.0" ] && continue
[ -e ${iface}/gateway ] && gw=$(read a < ${iface}/gateway; echo $a)
[ "$gateway" = "0.0.0.0" ] && unset $gateway
[ -e ${iface}/subnet-mask ] && mask=$(read a < ${iface}/subnet-mask; echo $a)
+ [ -e ${iface}/prefix-len ] && prefix=$(read a < ${iface}/prefix-len; echo $a)
[ -e ${iface}/primary-dns ] && dns1=$(read a < ${iface}/primary-dns; echo $a)
[ "$dns1" = "0.0.0.0" ] && unset $dns1
[ -e ${iface}/secondary-dns ] && dns2=$(read a < ${iface}/secondary-dns; echo $a)
[ "$dns2" = "0.0.0.0" ] && unset $dns2
[ -e ${iface}/hostname ] && hostname=$(read a < ${iface}/hostname; echo $a)
- if [ -n "$ip" ] && [ -n "$mask" ]; then
+ if [ "$family" = "ipv6" ] ; then
@ -73,7 +76,7 @@ Index: dracut-042/modules.d/40network/net-lib.sh
echo "ip=$ip::$gw:$mask:$hostname:$dev:none${dns1:+:$dns1}${dns2:+:$dns2}"
else
warn "${iface} does not contain a valid iBFT configuration"
@@ -405,6 +436,13 @@ ip_to_var() {
@@ -436,6 +467,13 @@ ip_to_var() {
esac
;;
esac

View File

@ -18,12 +18,12 @@ Signed-off-by: Hannes Reinecke <hare@suse.de>
modules.d/40network/parse-ip-opts.sh | 2 +-
3 files changed, 45 insertions(+), 8 deletions(-)
Index: dracut-042/modules.d/40network/ifup.sh
Index: dracut-044/modules.d/40network/ifup.sh
===================================================================
--- dracut-042.orig/modules.d/40network/ifup.sh 2015-06-24 18:02:13.849627528 +0200
+++ dracut-042/modules.d/40network/ifup.sh 2015-06-24 18:02:23.090153581 +0200
@@ -222,13 +222,14 @@ do_static() {
linkup $netif
--- dracut-044.orig/modules.d/40network/ifup.sh
+++ dracut-044/modules.d/40network/ifup.sh
@@ -240,9 +240,10 @@ do_static() {
[ -n "$macaddr" ] && ip link set address $macaddr dev $netif
[ -n "$mtu" ] && ip link set mtu $mtu dev $netif
+ [ -n "$mask" -a -z "$prefix" ] && prefix=$(mask_to_prefix $mask)
@ -33,13 +33,17 @@ Index: dracut-042/modules.d/40network/ifup.sh
+ ip addr add $ip/$prefix ${srv:+peer $srv} dev $netif
wait_for_ipv6_dad $netif
else
if ! arping -f -q -D -c 2 -I $netif $ip; then
@@ -250,7 +251,7 @@ do_static() {
return 1
fi
ip addr flush dev $netif
- ip addr add $ip/$mask ${srv:+peer $srv} brd + dev $netif
+ ip addr add $ip/$prefix ${srv:+peer $srv} brd + dev $netif
fi
[ -n "$gw" ] && echo ip route replace default via $gw dev $netif > /tmp/net.$netif.gw
@@ -404,7 +405,7 @@ for p in $(getargs ip=); do
@@ -426,7 +427,7 @@ for p in $(getargs ip=); do
# Pull in existing static configuration
. /etc/sysconfig/network/ifcfg-${netif}
ip=${IPADDR}
@ -48,7 +52,7 @@ Index: dracut-042/modules.d/40network/ifup.sh
mtu=${MTU}
server=${REMOTE_IPADDR}
gw=${GATEWAY}
@@ -418,7 +419,7 @@ for p in $(getargs ip=); do
@@ -440,7 +441,7 @@ for p in $(getargs ip=); do
done
# Store config for later use
@ -57,12 +61,12 @@ Index: dracut-042/modules.d/40network/ifup.sh
eval '[ "$'$i'" ] && echo '$i'="$'$i'"'
done > /tmp/net.$netif.override
Index: dracut-042/modules.d/40network/net-lib.sh
Index: dracut-044/modules.d/40network/net-lib.sh
===================================================================
--- dracut-042.orig/modules.d/40network/net-lib.sh 2015-06-24 18:02:22.802137185 +0200
+++ dracut-042/modules.d/40network/net-lib.sh 2015-06-24 18:02:23.090153581 +0200
@@ -7,6 +7,35 @@ get_ip() {
ip=${ip##* }
--- dracut-044.orig/modules.d/40network/net-lib.sh
+++ dracut-044/modules.d/40network/net-lib.sh
@@ -20,6 +20,35 @@ get_ip() {
echo $ip
}
+mask_to_prefix() {
@ -97,7 +101,7 @@ Index: dracut-042/modules.d/40network/net-lib.sh
iface_for_remote_addr() {
set -- $(ip -o route get to $1)
echo $5
@@ -204,7 +233,7 @@ ibft_to_cmdline() {
@@ -232,7 +261,7 @@ ibft_to_cmdline() {
for iface in /sys/firmware/ibft/ethernet*; do
local mac="" dev=""
local dhcp="" ip="" gw="" mask="" hostname=""
@ -106,7 +110,7 @@ Index: dracut-042/modules.d/40network/net-lib.sh
[ -e ${iface}/mac ] || continue
mac=$(read a < ${iface}/mac; echo $a)
@@ -249,6 +278,7 @@ ibft_to_cmdline() {
@@ -280,6 +309,7 @@ ibft_to_cmdline() {
[ -e ${iface}/hostname ] && hostname=$(read a < ${iface}/hostname; echo $a)
if [ "$family" = "ipv6" ] ; then
if [ -n "$ip" ] ; then
@ -114,7 +118,7 @@ Index: dracut-042/modules.d/40network/net-lib.sh
[ -n "$prefix" ] || prefix=64
ip="[${ip}/${prefix}]"
mask=
@@ -256,6 +286,11 @@ ibft_to_cmdline() {
@@ -287,6 +317,11 @@ ibft_to_cmdline() {
if [ -n "$gw" ] ; then
gw="[${gw}]"
fi
@ -126,7 +130,7 @@ Index: dracut-042/modules.d/40network/net-lib.sh
fi
if [ -n "$ip" ] && [ -n "$mask" -o -n "$prefix" ]; then
echo "ip=$ip::$gw:$mask:$hostname:$dev:none${dns1:+:$dns1}${dns2:+:$dns2}"
@@ -264,6 +299,7 @@ ibft_to_cmdline() {
@@ -295,6 +330,7 @@ ibft_to_cmdline() {
warn "ip-addr=$ip"
warn "gateway=$gw"
warn "subnet-mask=$mask"
@ -134,7 +138,7 @@ Index: dracut-042/modules.d/40network/net-lib.sh
warn "hostname=$hostname"
fi
else
@@ -411,7 +447,7 @@ ip_to_var() {
@@ -442,7 +478,7 @@ ip_to_var() {
fi
done
@ -143,7 +147,7 @@ Index: dracut-042/modules.d/40network/net-lib.sh
case $# in
0) autoconf="error" ;;
1) autoconf=$1 ;;
@@ -439,7 +475,7 @@ ip_to_var() {
@@ -470,7 +506,7 @@ ip_to_var() {
# Extract prefix length from CIDR notation
case $ip in
*/*)
@ -152,11 +156,11 @@ Index: dracut-042/modules.d/40network/net-lib.sh
ip=${ip%/*}
;;
esac
Index: dracut-042/modules.d/40network/parse-ip-opts.sh
Index: dracut-044/modules.d/40network/parse-ip-opts.sh
===================================================================
--- dracut-042.orig/modules.d/40network/parse-ip-opts.sh 2015-06-24 18:02:13.849627528 +0200
+++ dracut-042/modules.d/40network/parse-ip-opts.sh 2015-06-24 18:02:23.090153581 +0200
@@ -77,7 +77,7 @@ for p in $(getargs ip=); do
--- dracut-044.orig/modules.d/40network/parse-ip-opts.sh
+++ dracut-044/modules.d/40network/parse-ip-opts.sh
@@ -79,7 +79,7 @@ for p in $(getargs ip=); do
none|off)
[ -z "$ip" ] && \
die "For argument 'ip=$p'\nValue '$autoopt' without static configuration does not make sense"

View File

@ -14,25 +14,29 @@ Signed-off-by: Hannes Reinecke <hare@suse.de>
modules.d/40network/ifup.sh | 8 ++++++++
1 file changed, 8 insertions(+)
Index: dracut-042/modules.d/40network/ifup.sh
Index: dracut-044/modules.d/40network/ifup.sh
===================================================================
--- dracut-042.orig/modules.d/40network/ifup.sh 2015-06-24 18:02:23.090153581 +0200
+++ dracut-042/modules.d/40network/ifup.sh 2015-06-24 18:02:27.658413647 +0200
@@ -223,11 +223,19 @@ do_static() {
--- dracut-044.orig/modules.d/40network/ifup.sh
+++ dracut-044/modules.d/40network/ifup.sh
@@ -241,7 +241,13 @@ do_static() {
[ -n "$macaddr" ] && ip link set address $macaddr dev $netif
[ -n "$mtu" ] && ip link set mtu $mtu dev $netif
[ -n "$mask" -a -z "$prefix" ] && prefix=$(mask_to_prefix $mask)
- if strglobin $ip '*:*:*'; then
+ if [ "${ip##*/}" != "${ip}" ] ; then
+ prefix="${ip##*/}"
+ ip="${ip%/*}"
+ fi
if strglobin $ip '*:*:*'; then
+if strglobin $ip '*:*:*'; then
+ # Always assume /64 prefix for IPv6
+ [ -z "$prefix" ] && prefix=64
# note no ip addr flush for ipv6
ip addr add $ip/$prefix ${srv:+peer $srv} dev $netif
wait_for_ipv6_dad $netif
else
@@ -250,6 +256,8 @@ do_static() {
warn "Duplicate address detected for $ip for interface $netif."
return 1
fi
+ # Assume /24 prefix for IPv4
+ [ -z "$prefix" ] && prefix=24
ip addr flush dev $netif

View File

@ -18,11 +18,11 @@ Signed-off-by: Hannes Reinecke <hare@suse.de>
modules.d/40network/net-lib.sh | 6 +++++-
3 files changed, 20 insertions(+), 1 deletion(-)
Index: dracut-042/modules.d/40network/ifup.sh
Index: dracut-044/modules.d/40network/ifup.sh
===================================================================
--- dracut-042.orig/modules.d/40network/ifup.sh 2015-06-24 18:02:27.658413647 +0200
+++ dracut-042/modules.d/40network/ifup.sh 2015-06-24 18:02:27.950430272 +0200
@@ -241,6 +241,19 @@ do_static() {
--- dracut-044.orig/modules.d/40network/ifup.sh
+++ dracut-044/modules.d/40network/ifup.sh
@@ -263,6 +263,19 @@ if strglobin $ip '*:*:*'; then
fi
[ -n "$gw" ] && echo ip route replace default via $gw dev $netif > /tmp/net.$netif.gw
@ -42,10 +42,10 @@ Index: dracut-042/modules.d/40network/ifup.sh
[ -n "$hostname" ] && echo "echo $hostname > /proc/sys/kernel/hostname" > /tmp/net.$netif.hostname
return 0
Index: dracut-042/modules.d/40network/module-setup.sh
Index: dracut-044/modules.d/40network/module-setup.sh
===================================================================
--- dracut-042.orig/modules.d/40network/module-setup.sh 2015-06-24 18:02:13.849627528 +0200
+++ dracut-042/modules.d/40network/module-setup.sh 2015-06-24 18:02:27.950430272 +0200
--- dracut-044.orig/modules.d/40network/module-setup.sh
+++ dracut-044/modules.d/40network/module-setup.sh
@@ -53,6 +53,8 @@ install() {
[[ $hostonly ]] && {

View File

@ -17,20 +17,14 @@ Signed-off-by: Julian Wolf <juwolf@suse.de>
modules.d/90crypt/module-setup.sh | 4 ++++
2 files changed, 13 insertions(+)
Index: dracut-042/modules.d/90crypt/crypt-lib.sh
Index: dracut-044/modules.d/90crypt/crypt-lib.sh
===================================================================
--- dracut-042.orig/modules.d/90crypt/crypt-lib.sh 2015-06-11 17:39:47.000000000 +0200
+++ dracut-042/modules.d/90crypt/crypt-lib.sh 2015-06-24 18:02:28.878483104 +0200
@@ -5,11 +5,20 @@ command -v getarg >/dev/null || . /lib/d
# check if the crypttab contains an entry for a LUKS UUID
crypttab_contains() {
local luks="$1"
+ local _uuid _line
local l d rest
if [ -f /etc/crypttab ]; then
while read l d rest || [ -n "$l" ]; do
strstr "${l##luks-}" "${luks##luks-}" && return 0
strstr "$d" "${luks##luks-}" && return 0
--- dracut-044.orig/modules.d/90crypt/crypt-lib.sh
+++ dracut-044/modules.d/90crypt/crypt-lib.sh
@@ -16,6 +16,14 @@ crypttab_contains() {
[ "$dev" -ef "$_dev" ] && return 0
done
fi
+ if [ -e /usr/lib/dracut/modules.d/90crypt/block_uuid.map ]; then
+ # search for line starting with $d
+ _line=$(sed -n "\,^$d .*$,{p}" /usr/lib/dracut/modules.d/90crypt/block_uuid.map)
@ -42,11 +36,11 @@ Index: dracut-042/modules.d/90crypt/crypt-lib.sh
done < /etc/crypttab
fi
return 1
Index: dracut-042/modules.d/90crypt/module-setup.sh
Index: dracut-044/modules.d/90crypt/module-setup.sh
===================================================================
--- dracut-042.orig/modules.d/90crypt/module-setup.sh 2015-06-11 17:39:47.000000000 +0200
+++ dracut-042/modules.d/90crypt/module-setup.sh 2015-06-24 18:02:28.882483333 +0200
@@ -63,6 +63,8 @@ install() {
--- dracut-044.orig/modules.d/90crypt/module-setup.sh
+++ dracut-044/modules.d/90crypt/module-setup.sh
@@ -64,6 +64,8 @@ install() {
inst_hook cleanup 30 "$moddir/crypt-cleanup.sh"
fi
@ -55,7 +49,7 @@ Index: dracut-042/modules.d/90crypt/module-setup.sh
if [[ $hostonly ]] && [[ -f /etc/crypttab ]]; then
# filter /etc/crypttab for the devices we need
while read _mapper _dev _rest || [ -n "$_mapper" ]; do
@@ -72,6 +73,8 @@ install() {
@@ -73,6 +75,8 @@ install() {
[[ $_dev == UUID=* ]] && \
_dev="/dev/disk/by-uuid/${_dev#UUID=}"
@ -64,12 +58,12 @@ Index: dracut-042/modules.d/90crypt/module-setup.sh
for _hdev in "${!host_fs_types[@]}"; do
[[ ${host_fs_types[$_hdev]} == "crypto_LUKS" ]] || continue
if [[ $_hdev -ef $_dev ]] || [[ /dev/block/$_hdev -ef $_dev ]]; then
@@ -84,6 +87,8 @@ install() {
@@ -85,6 +89,8 @@ install() {
fi
inst_simple "$moddir/crypt-lib.sh" "/lib/dracut-crypt-lib.sh"
+ inst_simple $uuid_map_file "/usr/lib/dracut/modules.d/90crypt/block_uuid.map"
+ rm -f $uuid_map_file
inst_multiple -o \
$systemdutildir/system-generators/systemd-cryptsetup-generator \
if dracut_module_included "systemd"; then
inst_multiple -o \

View File

@ -5,14 +5,14 @@ Subject: Find kernel modules in extra and weak-updates path also
Signed-off-by: Thomas Renninger <trenn@suse.de>
---
dracut-functions.sh | 2 +-
dracut-init.sh | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
Index: dracut-042/dracut-functions.sh
Index: dracut-044/dracut-init.sh
===================================================================
--- dracut-042.orig/dracut-functions.sh 2015-06-24 18:02:08.741336717 +0200
+++ dracut-042/dracut-functions.sh 2015-06-24 18:02:29.194501095 +0200
@@ -1657,7 +1657,7 @@ find_kernel_modules_by_path () {
--- dracut-044.orig/dracut-init.sh
+++ dracut-044/dracut-init.sh
@@ -1058,7 +1058,7 @@ find_kernel_modules_by_path () {
_OLDIFS=$IFS
IFS=:
while read a rest || [ -n "$a" ]; do

View File

@ -10,11 +10,11 @@ Signed-off-by: Thomas Renninger <trenn@suse.de>
dracut.sh | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
Index: dracut-042/dracut.sh
Index: dracut-044/dracut.sh
===================================================================
--- dracut-042.orig/dracut.sh 2015-06-24 18:02:21.906086174 +0200
+++ dracut-042/dracut.sh 2015-06-24 18:02:29.490517947 +0200
@@ -1191,6 +1191,7 @@ if [[ $hostonly ]]; then
--- dracut-044.orig/dracut.sh
+++ dracut-044/dracut.sh
@@ -1121,6 +1121,7 @@ if [[ $hostonly ]]; then
"/usr/lib64" \
"/boot" \
"/boot/efi" \

View File

@ -7,15 +7,15 @@ bnc#895331
CC: Jan Loeser <jloeser@suse.de>
---
dracut-functions.sh | 6 +++++-
dracut-init.sh | 6 +++++-
dracut.sh | 12 ++++++++++++
2 files changed, 17 insertions(+), 1 deletions(-)
Index: dracut-042/dracut-functions.sh
Index: dracut-044/dracut-init.sh
===================================================================
--- dracut-042.orig/dracut-functions.sh 2015-06-24 18:02:29.194501095 +0200
+++ dracut-042/dracut-functions.sh 2015-06-24 18:02:29.782534571 +0200
@@ -1740,8 +1740,14 @@ instmods() {
--- dracut-044.orig/dracut-init.sh
+++ dracut-044/dracut-init.sh
@@ -1141,8 +1141,14 @@ instmods() {
--set-version $kernel ${_moddirname} $_mpargs
((_ret+=$?))
else
@ -31,11 +31,11 @@ Index: dracut-042/dracut-functions.sh
fi
;;
esac
Index: dracut-042/dracut.sh
Index: dracut-044/dracut.sh
===================================================================
--- dracut-042.orig/dracut.sh 2015-06-24 18:02:29.490517947 +0200
+++ dracut-042/dracut.sh 2015-06-24 18:02:29.782534571 +0200
@@ -855,6 +855,18 @@ if [[ -n "$logfile" ]];then
--- dracut-044.orig/dracut.sh
+++ dracut-044/dracut.sh
@@ -767,6 +767,18 @@ if [[ -n "$logfile" ]];then
fi
fi
@ -52,5 +52,5 @@ Index: dracut-042/dracut.sh
+done <<< "$(grep -h "^# SUSE INITRD: " /etc/modprobe.d/[0-9][0-9]*.conf)"
+
# handle compression options.
[[ $compress ]] || compress="gzip"
case $compress in
if [[ $_no_compress_l = "cat" ]]; then
compress="cat"

View File

@ -10,16 +10,16 @@ Signed-off-by: Thomas Renninger <trenn@suse.de>
modules.d/40network/module-setup.sh | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
Index: dracut-042/modules.d/90kernel-network-modules/module-setup.sh
Index: dracut-044/modules.d/90kernel-network-modules/module-setup.sh
===================================================================
--- dracut-042.orig/modules.d/90kernel-network-modules/module-setup.sh 2015-06-11 17:39:47.000000000 +0200
+++ dracut-042/modules.d/90kernel-network-modules/module-setup.sh 2015-06-24 18:02:30.094552334 +0200
--- dracut-044.orig/modules.d/90kernel-network-modules/module-setup.sh
+++ dracut-044/modules.d/90kernel-network-modules/module-setup.sh
@@ -61,7 +61,7 @@ installkernel() {
=drivers/net/phy \
=drivers/net/team \
=drivers/net/ethernet \
- ecb arc4 bridge stp llc ipv6 bonding 8021q af_packet virtio_net
+ ecb arc4 bridge stp llc ipv6 bonding 8021q af_packet virtio_net xennet
hostonly="" instmods iscsi_ibft crc32c iscsi_boot_sysfs
}
# called by dracut

View File

@ -1,39 +0,0 @@
From: Andrei Borzenkov <arvidjaar@gmail.com>
Subject: ensure pre-mount (and resume) run before root fsck
References: bnc#906592
Index: dracut-042/modules.d/98dracut-systemd/rootfs-generator.sh
===================================================================
--- dracut-042.orig/modules.d/98dracut-systemd/rootfs-generator.sh 2015-06-11 17:39:47.000000000 +0200
+++ dracut-042/modules.d/98dracut-systemd/rootfs-generator.sh 2015-06-24 18:02:34.526804656 +0200
@@ -65,6 +65,23 @@ generator_mount_rootfs()
fi
}
+generator_fsck_after_pre_mount()
+{
+ local _name
+
+ [ -z "$1" ] && return 0
+
+ _name=$(dev_unit_name "$1")
+ [ -d /run/systemd/generator/systemd-fsck@${_name}.service.d ] || mkdir -p /run/systemd/generator/systemd-fsck@${_name}.service.d
+ if ! [ -f /run/systemd/generator/systemd-fsck@${_name}.service.d/after-pre-mount.conf ]; then
+ {
+ echo "[Unit]"
+ echo "After=dracut-pre-mount.service"
+ } > /run/systemd/generator/systemd-fsck@${_name}.service.d/after-pre-mount.conf
+ fi
+
+}
+
root=$(getarg root=)
case "$root" in
block:LABEL=*|LABEL=*)
@@ -95,6 +112,7 @@ GENERATOR_DIR="$1"
if [ "${root%%:*}" = "block" ]; then
generator_wait_for_dev "${root#block:}" "$RDRETRY"
+ generator_fsck_after_pre_mount "${root#block:}"
strstr "$(cat /proc/cmdline)" 'root=' || generator_mount_rootfs "${root#block:}" "$(getarg rootfstype=)" "$(getarg rootflags=)"
fi

View File

@ -12,11 +12,11 @@ Signed-off-by: Fabian Vogt <fvogt@suse.com>
dracut.sh | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
Index: dracut-043/dracut.sh
Index: dracut-044/dracut.sh
===================================================================
--- dracut-043.orig/dracut.sh
+++ dracut-043/dracut.sh
@@ -310,11 +310,17 @@ dropindirs_sort()
--- dracut-044.orig/dracut.sh
+++ dracut-044/dracut.sh
@@ -279,11 +279,17 @@ dropindirs_sort()
rearrange_params()
{
# Workaround -i, --include taking 2 arguments

View File

@ -10,11 +10,11 @@ Signed-off-by: Fabian Vogt <fvogt@suse.com>
dracut.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dracut.sh b/dracut.sh
index 44b8a3d..11a4a2e 100755
--- a/dracut.sh
+++ b/dracut.sh
@@ -1501,7 +1501,7 @@ if [[ $no_kernel != yes ]]; then
Index: dracut-044/dracut.sh
===================================================================
--- dracut-044.orig/dracut.sh
+++ dracut-044/dracut.sh
@@ -1441,7 +1441,7 @@ if [[ $no_kernel != yes ]]; then
hostonly='' instmods $drivers
fi
@ -23,6 +23,3 @@ index 44b8a3d..11a4a2e 100755
hostonly='' instmods -c $add_drivers
fi
if [[ $force_drivers ]]; then
--
2.5.1

View File

@ -1,34 +0,0 @@
From d4b93a092db1105a29a3f768d1d49ece8b90547a Mon Sep 17 00:00:00 2001
From: Fabian Deutsch <fabiand@fedoraproject.org>
Date: Thu, 25 Jun 2015 11:17:59 +0200
Subject: [PATCH] Revert "lvm: Don't activate LVs with activationskip
set"
This reverts commit cfa365a32d47388c8476064b23d7d4684f1e591b.
The logic in commit cfa365a was added to prevent (odl) lvms from
activating snapshots which should not be activated.
Newer lvms however do this automatically (not enabling an LV if the
the 'k' attribute set), thus we can revert the previous commit.
---
modules.d/90lvm/lvm_scan.sh | 4 ----
1 file changed, 4 deletions(-)
diff --git a/modules.d/90lvm/lvm_scan.sh b/modules.d/90lvm/lvm_scan.sh
index ce46e14..7495644 100755
--- a/modules.d/90lvm/lvm_scan.sh
+++ b/modules.d/90lvm/lvm_scan.sh
@@ -106,10 +106,6 @@ if [ -n "$LVS" ] ; then
info "Scanning devices $lvmdevs for LVM logical volumes $LVS"
lvm lvscan --ignorelockingfailure 2>&1 | vinfo
for LV in $LVS; do
- if [ "x$(lvm lvs --noheadings --select "lv_attr =~ k" $LV | wc -l)" = "x0" ]; then
- info "Skipping activation of '$LV' because activationskip is set."
- continue
- fi
if [ -z "$sysinit" ]; then
lvm lvchange --yes -ay --ignorelockingfailure $nopoll --ignoremonitoring $LV 2>&1 | vinfo
else
--
2.6.0

View File

@ -1,41 +0,0 @@
From 875426f2fc1360401ddb5f97c67df031e54958d5 Mon Sep 17 00:00:00 2001
From: Harald Hoyer <harald@redhat.com>
Date: Wed, 11 Nov 2015 11:38:56 +0100
Subject: [PATCH] dracut.sh: remove "_EARLY" from CONFIG_MICROCODE_* checks
EARLY is merged in the main driver
---
dracut.sh | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/dracut.sh b/dracut.sh
index 2712e9e1b399..9ba481b7f7a7 100755
--- a/dracut.sh
+++ b/dracut.sh
@@ -1016,18 +1016,18 @@ fi
if [[ $early_microcode = yes ]]; then
if [[ $hostonly ]]; then
[[ $(get_cpu_vendor) == "AMD" ]] \
- && ! check_kernel_config CONFIG_MICROCODE_AMD_EARLY \
+ && ! check_kernel_config CONFIG_MICROCODE_AMD \
&& unset early_microcode
[[ $(get_cpu_vendor) == "Intel" ]] \
- && ! check_kernel_config CONFIG_MICROCODE_INTEL_EARLY \
+ && ! check_kernel_config CONFIG_MICROCODE_INTEL \
&& unset early_microcode
else
- ! check_kernel_config CONFIG_MICROCODE_AMD_EARLY \
- && ! check_kernel_config CONFIG_MICROCODE_INTEL_EARLY \
+ ! 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]_EARLY!=y"
+ && dwarn "Disabling early microcode, because kernel does not support it. CONFIG_MICROCODE_[AMD|INTEL]!=y"
fi
# Need to be able to have non-root users read stuff (rpcbind etc)
--
2.6.3

View File

@ -8,11 +8,11 @@ https://bugzilla.opensuse.org/show_bug.cgi?id=905746
modules.d/90dmraid/dmraid.sh | 3 ---
modules.d/90dmraid/module-setup.sh | 2 +-
2 files changed, 1 insertion(+), 4 deletions(-)
Index: dracut-043/modules.d/90dmraid/dmraid.sh
Index: dracut-044/modules.d/90dmraid/dmraid.sh
===================================================================
--- dracut-043.orig/modules.d/90dmraid/dmraid.sh
+++ dracut-043/modules.d/90dmraid/dmraid.sh
@@ -26,8 +26,6 @@ if [ -n "$DM_RAIDS" ] || getargbool 0 rd
--- dracut-044.orig/modules.d/90dmraid/dmraid.sh
+++ dracut-044/modules.d/90dmraid/dmraid.sh
@@ -33,8 +33,6 @@ if [ -n "$DM_RAIDS" ] || getargbool 0 rd
if [ "${s##$r}" != "$s" ]; then
info "Activating $s"
dmraid -ay -i -p --rm_partitions "$s" 2>&1 | vinfo
@ -21,10 +21,10 @@ Index: dracut-043/modules.d/90dmraid/dmraid.sh
fi
done
done
Index: dracut-043/modules.d/90dmraid/module-setup.sh
Index: dracut-044/modules.d/90dmraid/module-setup.sh
===================================================================
--- dracut-043.orig/modules.d/90dmraid/module-setup.sh
+++ dracut-043/modules.d/90dmraid/module-setup.sh
--- dracut-044.orig/modules.d/90dmraid/module-setup.sh
+++ dracut-044/modules.d/90dmraid/module-setup.sh
@@ -74,6 +74,8 @@ install() {
inst "$moddir/dmraid.sh" /sbin/dmraid_scan

View File

@ -7,14 +7,14 @@ Subject: [PATCH] Don't let inst1mod fail if module is built-in
Signed-off-by: Fabian Vogt <fvogt@suse.com>
---
dracut-functions.sh | 5 +++++
dracut-init.sh | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/dracut-functions.sh b/dracut-functions.sh
index b666446..e5be295 100755
--- a/dracut-functions.sh
+++ b/dracut-functions.sh
@@ -1721,6 +1721,11 @@ instmods() {
Index: dracut-044/dracut-init.sh
===================================================================
--- dracut-044.orig/dracut-init.sh
+++ dracut-044/dracut-init.sh
@@ -1122,6 +1122,11 @@ instmods() {
return 0
fi
@ -26,6 +26,3 @@ index b666446..e5be295 100755
# If we are building a host-specific initramfs and this
# module is not already loaded, move on to the next one.
[[ $hostonly ]] \
--
2.6.2

View File

@ -1,185 +0,0 @@
From: Fabian Vogt <fvogt@suse.com>
Subject: Use /etc/fstab for /sysroot instead of custom sysroot.mount
systemd-fstab-generator is capable of mounting /sysroot itself,
looking at /proc/cmdline if root= is set.
Index: dracut-043/modules.d/00systemd/module-setup.sh
===================================================================
--- dracut-043.orig/modules.d/00systemd/module-setup.sh
+++ dracut-043/modules.d/00systemd/module-setup.sh
@@ -14,7 +14,7 @@ check() {
# called by dracut
depends() {
- return 0
+ echo fs-lib
}
installkernel() {
@@ -22,6 +22,23 @@ installkernel() {
instmods -s efivarfs
}
+fstab_sysroot() {
+ local _dev=/dev/block/$(find_root_block_device)
+ local _fstype _flags _subvol
+ if [ -e $_dev ]; then
+ _dev=$(shorten_persistent_dev "$(get_persistent_dev "$_dev")")
+ _fstype="$(find_mp_fstype /)"
+ _flags="$(find_mp_fsopts /)"
+
+ if [[ $use_fstab != yes ]] && [[ $_fstype = btrfs ]]; then
+ _subvol=$(findmnt -e -v -n -o FSROOT --target /) \
+ && _subvol=${_subvol#/}
+ _flags="$_flags,${_subvol:+subvol=$_subvol}"
+ fi
+ printf "%s /sysroot %s %s 1 1\n" "$_dev" "$_fstype" "${_flags#,}"
+ fi
+}
+
# called by dracut
install() {
local _mods
@@ -216,5 +233,8 @@ install() {
} >> "$initdir/etc/systemd/journald.conf"
ln_r "${systemdsystemunitdir}/multi-user.target" "${systemdsystemunitdir}/default.target"
+
+ # Add entry for /sysroot to /etc/fstab
+ fstab_sysroot >> "$initdir/etc/fstab"
}
Index: dracut-043/modules.d/95rootfs-block/module-setup.sh
===================================================================
--- dracut-043.orig/modules.d/95rootfs-block/module-setup.sh
+++ dracut-043/modules.d/95rootfs-block/module-setup.sh
@@ -48,22 +48,25 @@ cmdline_rootfs() {
# called by dracut
cmdline() {
- cmdline_rootfs
- cmdline_journal
+ # When using systemd, we're storing the root device in /etc/fstab instead.
+ if ! dracut_module_included "systemd"; then
+ cmdline_rootfs
+ cmdline_journal
+ fi
}
# called by dracut
install() {
- if [[ $hostonly_cmdline == "yes" ]]; then
- local _journaldev=$(cmdline_journal)
- [[ $_journaldev ]] && printf "%s\n" "$_journaldev" >> "${initdir}/etc/cmdline.d/95root-journaldev.conf"
- local _rootdev=$(cmdline_rootfs)
- [[ $_rootdev ]] && printf "%s\n" "$_rootdev" >> "${initdir}/etc/cmdline.d/95root-dev.conf"
- fi
-
inst_multiple umount
inst_multiple tr
if ! dracut_module_included "systemd"; then
+ if [[ $hostonly_cmdline == "yes" ]]; then
+ local _journaldev=$(cmdline_journal)
+ [[ $_journaldev ]] && printf "%s\n" "$_journaldev" >> "${initdir}/etc/cmdline.d/95root-journaldev.conf"
+ local _rootdev=$(cmdline_rootfs)
+ [[ $_rootdev ]] && printf "%s\n" "$_rootdev" >> "${initdir}/etc/cmdline.d/95root-dev.conf"
+ fi
+
inst_hook cmdline 95 "$moddir/parse-block.sh"
inst_hook pre-udev 30 "$moddir/block-genrules.sh"
inst_hook mount 99 "$moddir/mount-root.sh"
Index: dracut-043/modules.d/98dracut-systemd/dracut-cmdline.sh
===================================================================
--- dracut-043.orig/modules.d/98dracut-systemd/dracut-cmdline.sh
+++ dracut-043/modules.d/98dracut-systemd/dracut-cmdline.sh
@@ -68,8 +68,12 @@ case "$root" in
rootok=1 ;;
esac
-[ -z "$root" ] && die "No or empty root= argument"
-[ -z "$rootok" ] && die "Don't know how to handle 'root=$root'"
+if [ -z "$root" ]; then
+ root=$(findmnt --fstab -n --output source --target /sysroot)
+ [ -z "$root" ] && die "No or empty root= argument and not in fstab"
+elif [ -z "$rootok" ]; then
+ die "Don't know how to handle 'root=$root'"
+fi
export root rflags fstype netroot NEWROOT
Index: dracut-043/modules.d/98dracut-systemd/rootfs-generator.sh
===================================================================
--- dracut-043.orig/modules.d/98dracut-systemd/rootfs-generator.sh
+++ dracut-043/modules.d/98dracut-systemd/rootfs-generator.sh
@@ -36,35 +36,6 @@ generator_wait_for_dev()
fi
}
-generator_mount_rootfs()
-{
- local _type=$2
- local _flags=$3
- local _name
-
- [ -z "$1" ] && return 0
-
- _name=$(dev_unit_name "$1")
- [ -d "$GENERATOR_DIR" ] || mkdir -p "$GENERATOR_DIR"
- if ! [ -f "$GENERATOR_DIR"/sysroot.mount ]; then
- {
- echo "[Unit]"
- echo "Before=initrd-root-fs.target"
- echo "RequiresOverridable=systemd-fsck@${_name}.service"
- echo "After=systemd-fsck@${_name}.service"
- echo "[Mount]"
- echo "Where=/sysroot"
- echo "What=$1"
- echo "Options=${_flags}"
- echo "Type=${_type}"
- } > "$GENERATOR_DIR"/sysroot.mount
- fi
- if ! [ -L "$GENERATOR_DIR"/initrd-root-fs.target.requires/sysroot.mount ]; then
- [ -d "$GENERATOR_DIR"/initrd-root-fs.target.requires ] || mkdir -p "$GENERATOR_DIR"/initrd-root-fs.target.requires
- ln -s ../sysroot.mount "$GENERATOR_DIR"/initrd-root-fs.target.requires/sysroot.mount
- fi
-}
-
generator_fsck_after_pre_mount()
{
local _name
@@ -111,9 +82,12 @@ esac
GENERATOR_DIR="$1"
if [ "${root%%:*}" = "block" ]; then
- generator_wait_for_dev "${root#block:}" "$RDRETRY"
- generator_fsck_after_pre_mount "${root#block:}"
- strstr "$(cat /proc/cmdline)" 'root=' || generator_mount_rootfs "${root#block:}" "$(getarg rootfstype=)" "$(getarg rootflags=)"
+ generator_wait_for_dev "${root#block:}" "$RDRETRY"
+ generator_fsck_after_pre_mount "${root#block:}"
+ if ! [ -L "$GENERATOR_DIR"/initrd-root-fs.target.requires/sysroot.mount ]; then
+ [ -d "$GENERATOR_DIR"/initrd-root-fs.target.requires ] || mkdir -p "$GENERATOR_DIR"/initrd-root-fs.target.requires
+ ln -s ../sysroot.mount "$GENERATOR_DIR"/initrd-root-fs.target.requires/sysroot.mount
+ fi
fi
exit 0
Index: dracut-043/modules.d/99base/init.sh
===================================================================
--- dracut-043.orig/modules.d/99base/init.sh
+++ dracut-043/modules.d/99base/init.sh
@@ -128,8 +128,12 @@ make_trace_mem "hook cmdline" '1+:mem' '
getarg 'rd.break=cmdline' -d 'rdbreak=cmdline' && emergency_shell -n cmdline "Break before cmdline"
source_hook cmdline
-[ -z "$root" ] && die "No or empty root= argument"
-[ -z "$rootok" ] && die "Don't know how to handle 'root=$root'"
+if [ -z "$root" ]; then
+ root=$(findmnt --fstab -n --output source --target /sysroot)
+ [ -z "$root" ] && die "No or empty root= argument and not in fstab"
+elif [ -z "$rootok" ]; then
+ die "Don't know how to handle 'root=$root'"
+fi
export root rflags fstype netroot NEWROOT

View File

@ -1,57 +0,0 @@
From: Fabian Vogt <fvogt@suse.com>
Subject: dracut.sh: Support --mount with just mountpoint as parameter
Right now the --mount parameter of dracut expects a rather long fstab-like
line. This makes it possible to invoke dracut with e.g. --mount /boot.
Index: dracut-043/dracut.8.asc
===================================================================
--- dracut-043.orig/dracut.8.asc
+++ dracut-043/dracut.8.asc
@@ -338,6 +338,10 @@ provide a valid _/etc/fstab_.
The default _<dump frequency>_ is "0".
the default _<fsck order>_ is "2".
+**--mount** "_<mountpoint>_"::
+ Like above, but _<device>_, _<filesystem type>_ and _<filesystem options>_
+ are determined by looking at the current mounts.
+
**--add-device** _<device>_ ::
Bring up _<device>_ in initramfs, _<device>_ should be the device name.
This can be useful in hostonly mode for resume support when your swap is on
Index: dracut-043/dracut.sh
===================================================================
--- dracut-043.orig/dracut.sh
+++ dracut-043/dracut.sh
@@ -152,6 +152,8 @@ Creates initial ramdisk images for prelo
--mount "[DEV] [MP] [FSTYPE] [FSOPTS]"
Mount device [DEV] on mountpoint [MP] with filesystem
[FSTYPE] and options [FSOPTS] in the initramfs
+ --mount "[MP]" Same as above, but [DEV], [FSTYPE] and [FSOPTS] are
+ determined by looking at the current mounts.
--add-device "[DEV]" Bring up [DEV] in initramfs
-i, --include [SOURCE] [TARGET]
Include the files in the SOURCE directory into the
@@ -1536,9 +1538,21 @@ if [[ $kernel_only != yes ]]; then
while pop fstab_lines line; do
line=($line)
- [ -z "${line[3]}" ] && line[3]="defaults"
+
+ if [ -z "${line[1]}" ]; then
+ # Determine device and mount options from current system
+ mountpoint -q "${line[0]}" || derror "${line[0]} is not a mount point!"
+ line=($(findmnt --raw -n --target "${line[0]}" --output=source,target,fstype,options))
+ dinfo "Line for ${line[1]}: ${line[@]}"
+ else
+ # Use default options
+ [ -z "${line[3]}" ] && line[3]="defaults"
+ fi
+
+ # Default options for freq and passno
[ -z "${line[4]}" ] && line[4]="0"
[ -z "${line[5]}" ] && line[5]="2"
+
strstr "${line[2]}" "nfs" && line[5]="0"
echo "${line[@]}" >> "${initdir}/etc/fstab"
done

View File

@ -15,15 +15,15 @@ Subject: [PATCH] Accumulate kernel module installation failures
Signed-off-by: Fabian Vogt <fvogt@suse.com>
---
dracut-functions.sh | 11 ++++-------
dracut-init.sh | 11 ++++-------
dracut.sh | 9 +++++++++
2 files changed, 13 insertions(+), 7 deletions(-)
Index: dracut-043/dracut-functions.sh
Index: dracut-044/dracut-init.sh
===================================================================
--- dracut-043.orig/dracut-functions.sh
+++ dracut-043/dracut-functions.sh
@@ -1676,14 +1676,16 @@ instmods() {
--- 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
@ -41,7 +41,7 @@ Index: dracut-043/dracut-functions.sh
_silent=yes
shift
fi
@@ -1765,7 +1767,7 @@ instmods() {
@@ -1166,7 +1168,7 @@ instmods() {
while read _mod || [ -n "$_mod" ]; do
inst1mod "${_mod%.ko*}" || {
if [[ "$_check" == "yes" ]] && [[ "$_silent" == "no" ]]; then
@ -50,7 +50,7 @@ Index: dracut-043/dracut-functions.sh
fi
}
done
@@ -1773,7 +1775,7 @@ instmods() {
@@ -1174,7 +1176,7 @@ instmods() {
while (($# > 0)); do # filenames as arguments
inst1mod ${1%.ko*} || {
if [[ "$_check" == "yes" ]] && [[ "$_silent" == "no" ]]; then
@ -59,11 +59,11 @@ Index: dracut-043/dracut-functions.sh
fi
}
shift
Index: dracut-043/dracut.sh
Index: dracut-044/dracut.sh
===================================================================
--- dracut-043.orig/dracut.sh
+++ dracut-043/dracut.sh
@@ -420,6 +420,12 @@ verbosity_mod_l=0
--- dracut-044.orig/dracut.sh
+++ dracut-044/dracut.sh
@@ -390,6 +390,12 @@ verbosity_mod_l=0
unset kernel
unset outfile
@ -76,9 +76,9 @@ Index: dracut-043/dracut.sh
rearrange_params "$@"
eval set -- "$TEMP"
@@ -1789,6 +1795,15 @@ if ! (
@@ -1740,6 +1746,15 @@ if ! (
exit 1
fi
dinfo "*** Creating initrd image file '$outfile' done ***"
+if [[ -s $tmp_dracut_failed_drivers ]]; then
+ dwarn "Some kernel modules could not be included"
@ -91,4 +91,4 @@ Index: dracut-043/dracut.sh
+
if (( maxloglvl >= 5 )); then
if [[ $allowlocal ]]; then
"$dracutbasedir/lsinitrd.sh" "$outfile"| ddebug
"$dracutbasedir/lsinitrd.sh" "${DRACUT_TMPDIR}/initramfs.img"| ddebug

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1484b558ed20330125aa04dcccab84da15c5689e19068285aa011f7177889cd1
size 272744

3
dracut-044.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:84b97c9b0120e9fde06c3b9cf2ede1c4632cccd8e085e980b9ec9c788655af05
size 280004

View File

@ -1,3 +1,4 @@
addFilter("suse-missing-rclink")
addFilter("explicit-lib-dependency")
addFilter("systemd-service-without-service_*_*")
addFilter("devel-file-in-non-devel-package .* /usr/share/pkgconfig/dracut.pc")

View File

@ -1,3 +1,71 @@
-------------------------------------------------------------------
Thu Nov 26 10:22:11 UTC 2015 - fvogt@suse.com
- Don't require bind-utils, it conflicts with
minimal-base-conflicts
-------------------------------------------------------------------
Thu Nov 26 08:56:50 UTC 2015 - fvogt@suse.com
- Add warning about pkgconfig file to rpmlintrc's ignore list
- Fix spec file:
- Add dracut-catimages manpage to dracut-tools
- Fix summary of dracut-tools subpackage
-------------------------------------------------------------------
Thu Nov 26 08:48:13 UTC 2015 - fvogt@suse.com
- Remove 0400-use_fstab_systemd.patch
- Move dracut-catimages, /boot/dracut and /var/lib/dracut into
dracut-tools subpackage
- Cleanup spec file
-------------------------------------------------------------------
Thu Nov 26 07:51:48 UTC 2015 - fvogt@suse.com
- Refresh patches with line offsets:
0017-45ifcfg-use-distro-specific-scripts.patch
0048-40network-Only-enable-network-interfaces-if-explicit.patch
0088-91zipl-Add-new-module-to-update-s390x-configuration.patch
0121-Adjust-initramfs-kernel.img-to-SUSE-default-initrd-k.patch
0150-Find-kernel-modules-in-extra-and-weak-updates-path-a.patch
0157-Add-boot-zipl-to-host-devs-if-it-is-a-mount-point.patch
0182-fix-include-parsing.patch
0183-fix_add_drivers_hang.patch
0203-no-fail-builtin-module.patc
-------------------------------------------------------------------
Wed Nov 25 15:55:01 UTC 2015 - fvogt@suse.com
- Update to dracut-044
- Patches upstream, removed here:
0119-Reset-IFS-variable.patch
0120-mkinitrd-suse.sh-Bail-out-with-exit-1-if-initrd-cann.patch
0122-Get_kernel_version_from_gz_file_for_arm.patch
0165-Order-root-fsck-after-pre-mount.patch
0184-fix_lvm_wc_warning.patch
0185-dracut.sh-remove-_EARLY-from-CONFIG_MICROCODE_-check.patch
0401-mount_option_mountpoint.patch
- Updated/Refreshed patches:
0015-40network-replace-dhclient-with-wickedd-dhcp-supplic.patch
0019-40network-Fix-race-condition-when-wait-for-networks.patch
0056-81cio_ignore-handle-cio_ignore-commandline.patch
0058-dracut-add-warning-when-including-unsupported-module.patch
0066-40network-always-start-netroot-in-ifup.sh.patch
0094-Implement-shortcut-ip-ifname-static-for-static-confi.patch
0124-40network-Update-iBFT-scanning-code-to-handle-IPv6.patch
0125-40network-separate-mask-and-prefix.patch
0131-40network-handle-prefixed-IP-addresses-correctly.patch
0132-40network-fixup-static-network-configuration.patch
0144-90crypt-Fixed-crypttab_contains-to-also-work-with-de.patch
0150-Find-kernel-modules-in-extra-and-weak-updates-path-a.patch
0158-Add-SUSE-kernel-module-dependencies-in-etc-modprobe..patch
0159-network-Try-to-load-xennet.patch
0202-dracut_dmraid_use_udev.patch
0203-no-fail-builtin-module.patch
0402-driver-fail-summary.patch
-------------------------------------------------------------------
Wed Nov 25 08:06:02 UTC 2015 - fvogt@suse.com

View File

@ -19,7 +19,7 @@
%define dracutlibdir %{_libexecdir}/dracut
Name: dracut
Version: 043
Version: 044
Release: 0
Summary: Initramfs generator using udev
License: GPL-2.0+ and LGPL-2.1+
@ -32,11 +32,9 @@ Source4: purge-kernels
Source5: purge-kernels.service
Source6: dracut-installkernel
# Sent mainline
#Network:
Patch12: 0019-40network-Fix-race-condition-when-wait-for-networks.patch
Patch13: 0066-40network-always-start-netroot-in-ifup.sh.patch
#Network:
Patch15: 0015-40network-replace-dhclient-with-wickedd-dhcp-supplic.patch
Patch17: 0017-45ifcfg-use-distro-specific-scripts.patch
Patch48: 0048-40network-Only-enable-network-interfaces-if-explicit.patch
@ -90,24 +88,18 @@ Patch58: 0058-dracut-add-warning-when-including-unsupported-module.patch
Patch59: 0059-99suse-Add-SUSE-specific-initrd-parsing.patch
Patch90: 0090-dracut-caps-Remove-whole-caps-module.patch
Patch91: 0091-dracut-biosdevname-In-SUSE-biosdevname-package-is-in.patch
Patch119: 0119-Reset-IFS-variable.patch
Patch120: 0120-mkinitrd-suse.sh-Bail-out-with-exit-1-if-initrd-cann.patch
Patch121: 0121-Adjust-initramfs-kernel.img-to-SUSE-default-initrd-k.patch
Patch122: 0122-Get_kernel_version_from_gz_file_for_arm.patch
Patch130: 0130-nfs-Always-add-all-kernel-modules-for-kdump.patch
Patch144: 0144-90crypt-Fixed-crypttab_contains-to-also-work-with-de.patch
Patch150: 0150-Find-kernel-modules-in-extra-and-weak-updates-path-a.patch
Patch158: 0158-Add-SUSE-kernel-module-dependencies-in-etc-modprobe..patch
Patch163: 0163-Install-etc-sysconfig-console-to-see-specific-fonts.patch
Patch164: 0164-Fix-initramfs-ver.img-vs-initrd-ver-in-dracut-initra.patch
Patch165: 0165-Order-root-fsck-after-pre-mount.patch
Patch168: 0168-remove_plymouth_logo_file.patch
Patch180: 0180-i18n_add_correct_fontmaps.patch
Patch181: 0181-no_systemd_cryptsetup.patch
Patch182: 0182-fix-include-parsing.patch
Patch183: 0183-fix_add_drivers_hang.patch
Patch184: 0184-fix_lvm_wc_warning.patch
Patch185: 0185-dracut.sh-remove-_EARLY-from-CONFIG_MICROCODE_-check.patch
# Still needed
Patch133: 0133-Allow-multiple-configurations-per-network-interface-.patch
@ -125,13 +117,11 @@ Patch204: 0204-mkinitrd-fix-monster.patch
Patch205: 0205-mdraid_ignore_hostonly.patch
Patch206: 0206-nfs_dns_alias.patch
## fix for SUSE systems which have dpkg installed anyway
## SUSE-specific fixes
Patch300: 0300-dracut_dont_use_dpkg_defaults_on_SUSE.patch
Patch301: 0301-include_sysconfig_language.patch
# New features/improvements
Patch400: 0400-use_fstab_systemd.patch
Patch401: 0401-mount_option_mountpoint.patch
Patch402: 0402-driver-fail-summary.patch
BuildRequires: asciidoc
@ -139,10 +129,11 @@ BuildRequires: bash
BuildRequires: docbook-xsl-stylesheets
BuildRequires: libxslt
BuildRequires: suse-module-tools
BuildRequires: pkgconfig(systemd) >= 199
Requires: /usr/bin/get_kernel_version
BuildRequires: pkgconfig(systemd) >= 219
Requires: %{_bindir}/get_kernel_version
Requires: bash
Requires: bind-utils
# systemd-sysvinit provides: poweroff, reboot, halt
Requires: binutils
Requires: coreutils
Requires: cpio
Requires: file
@ -153,9 +144,7 @@ Requires: hardlink
Requires: modutils
Requires: pigz
Requires: sed
Requires: systemd >= 200
# systemd-sysvinit provides: poweroff, reboot, halt
Requires: binutils
Requires: systemd >= 219
Requires: systemd-sysvinit
Requires: udev > 166
Requires: util-linux >= 2.21
@ -185,6 +174,14 @@ This package requires everything which is needed to build an
initramfs with dracut, which does an integrity check of the kernel
and its cryptography during startup.
%package tools
Summary: Tools to build a local initramfs
Group: System/Base
Requires: %{name} = %{version}-%{release}
%description tools
This package contains tools to assemble the local initrd and host configuration.
%prep
%setup -q
%patch12 -p1
@ -228,10 +225,7 @@ chmod a+x modules.d/91zipl/install_zipl_cmdline.sh
%patch116 -p1
%patch117 -p1
%patch118 -p1
%patch119 -p1
%patch120 -p1
%patch121 -p1
%patch122 -p1
%patch123 -p1
%patch124 -p1
%patch125 -p1
@ -258,15 +252,12 @@ chmod a+x modules.d/91zipl/install_zipl_cmdline.sh
%patch159 -p1
%patch163 -p1
%patch164 -p1
%patch165 -p1
%patch168 -p1
%patch180 -p1
# disabled, as it breaks encrypted / on LVM - dimstar, 20151001
#patch181 -p1
%patch182 -p1
%patch183 -p1
%patch184 -p1
%patch185 -p1
%patch200 -p1
%patch201 -p1
@ -279,8 +270,6 @@ chmod a+x modules.d/91zipl/install_zipl_cmdline.sh
%patch300 -p1
%patch301 -p1
#patch400 -p1
%patch401 -p1
%patch402 -p1
%build
@ -295,31 +284,33 @@ make DESTDIR=%{buildroot} install %{?_smp_mflags}
echo -e "#!/bin/bash\nDRACUT_VERSION=%{version}-%{release}" > %{buildroot}/%{dracutlibdir}/dracut-version.sh
# we do not support dash in the initramfs
rm -fr %{buildroot}/%{dracutlibdir}/modules.d/00dash
rm -fr %{buildroot}/%{dracutlibdir}/modules.d/05busybox
# use 00systemd-bootchart instead
rm -fr %{buildroot}/%{dracutlibdir}/modules.d/00bootchart
# remove gentoo specific modules
rm -fr %{buildroot}%{dracutlibdir}/modules.d/50gensplash
# not supported
rm -fr %{buildroot}/%{dracutlibdir}/modules.d/00dash
rm -fr %{buildroot}/%{dracutlibdir}/modules.d/05busybox
# IMA modules are not supported currently.
# with systemd IMA and selinux modules do not make sense
rm -fr %{buildroot}/%{dracutlibdir}/modules.d/96securityfs
rm -fr %{buildroot}/%{dracutlibdir}/modules.d/97masterkey
rm -fr %{buildroot}/%{dracutlibdir}/modules.d/98integrity
# remove gentoo specific modules
rm -fr %{buildroot}%{dracutlibdir}/modules.d/50gensplash
mkdir -p %{buildroot}/boot/dracut
mkdir -p %{buildroot}%{_localstatedir}/lib/dracut/overlay
mkdir -p %{buildroot}%{_localstatedir}/log
touch %{buildroot}%{_localstatedir}/log/dracut.log
install -m 0644 dracut.conf.d/suse.conf.example %{buildroot}%{_sysconfdir}/dracut.conf.d/01-dist.conf
install -m 0644 dracut.conf.d/suse.conf.example %{buildroot}%{_sysconfdir}/dracut.conf.d/01-dist.conf
install -m 0644 dracut.conf.d/fips.conf.example %{buildroot}%{_sysconfdir}/dracut.conf.d/40-fips.conf
%ifarch %ix86 x86_64
echo 'early_microcode="yes"' > %{buildroot}%{_sysconfdir}/dracut.conf.d/02-early-microcode.conf
%endif
rm %{buildroot}%{_bindir}/mkinitrd
# moved to /sbin
mkdir -p %{buildroot}/sbin
@ -376,35 +367,34 @@ ln -s %{dracutlibdir}/modules.d/45ifcfg/write-ifcfg-redhat.sh %{buildroot}/%{dra
%{dracutlibdir}/modules.d/01fips
%{dracutlibdir}/modules.d/02fips-aesni
%files tools
%{_bindir}/dracut-catimages
%{_mandir}/man8/dracut-catimages.8*
%dir /boot/dracut
%dir %{_localstatedir}/lib/dracut
%dir %{_localstatedir}/lib/dracut/overlay
%files
%defattr(-,root,root,0755)
%doc README HACKING TODO COPYING AUTHORS NEWS dracut.html dracut.png dracut.svg
%{_bindir}/dracut
%{_bindir}/dracut-catimages
%{_bindir}/lsinitrd
/sbin/purge-kernels
/sbin/installkernel
/sbin/mkinitrd
/sbin/mkinitrd_setup
%config %{_sysconfdir}/bash_completion.d/lsinitrd
/usr/share/pkgconfig/dracut.pc
%dir %{dracutlibdir}
%dir %{dracutlibdir}/modules.d
%{dracutlibdir}/skipcpio
%{dracutlibdir}/dracut-functions.sh
%{dracutlibdir}/dracut-functions
%{dracutlibdir}/dracut-version.sh
%{dracutlibdir}/dracut-logger.sh
%{dracutlibdir}/dracut-initramfs-restore
%{dracutlibdir}/dracut-install
%{_datadir}/pkgconfig/dracut.pc
%config(noreplace) %{_sysconfdir}/dracut.conf
%dir %{_sysconfdir}/dracut.conf.d
%if 0%{?fedora} || 0%{?suse_version} || 0%{?rhel}
%config %{_sysconfdir}/dracut.conf.d/01-dist.conf
%endif
%ifarch %ix86 x86_64
%config %{_sysconfdir}/dracut.conf.d/02-early-microcode.conf
%endif
%dir %{_sysconfdir}/dracut.conf.d
%{_mandir}/man8/dracut.8*
%{_mandir}/man8/mkinitrd.8*
%{_mandir}/man1/lsinitrd.1*
@ -421,21 +411,31 @@ ln -s %{dracutlibdir}/modules.d/45ifcfg/write-ifcfg-redhat.sh %{buildroot}/%{dra
%{_mandir}/man8/dracut-pre-mount.service.8.*
%{_mandir}/man8/dracut-shutdown.service.8.*
%{_mandir}/man5/dracut.conf.5*
%{_mandir}/man8/dracut-catimages.8*
%dir %{_libexecdir}/kernel
%dir %{_libexecdir}/kernel/install.d
%{_libexecdir}/kernel/install.d/50-dracut.install
%{_libexecdir}/kernel/install.d/51-dracut-rescue.install
%dir %{dracutlibdir}/modules.d/00systemd-bootchart
%dir %{dracutlibdir}/modules.d/03rescue
%dir %{dracutlibdir}
%{dracutlibdir}/skipcpio
%{dracutlibdir}/dracut-functions.sh
%{dracutlibdir}/dracut-init.sh
%{dracutlibdir}/dracut-functions
%{dracutlibdir}/dracut-version.sh
%{dracutlibdir}/dracut-logger.sh
%{dracutlibdir}/dracut-initramfs-restore
%{dracutlibdir}/dracut-install
%dir %{dracutlibdir}/modules.d
%{dracutlibdir}/modules.d/00bash
%{dracutlibdir}/modules.d/00systemd-bootchart/module-setup.sh
%{dracutlibdir}/modules.d/00systemd-bootchart
%{dracutlibdir}/modules.d/00warpclock
%{dracutlibdir}/modules.d/00systemd
%{dracutlibdir}/modules.d/01systemd-initrd
%{dracutlibdir}/modules.d/02systemd-networkd
%{dracutlibdir}/modules.d/03modsign
%{dracutlibdir}/modules.d/03rescue/module-setup.sh
%{dracutlibdir}/modules.d/03rescue
%{dracutlibdir}/modules.d/04watchdog
%{dracutlibdir}/modules.d/10i18n
%{dracutlibdir}/modules.d/30convertfs
@ -498,21 +498,20 @@ ln -s %{dracutlibdir}/modules.d/45ifcfg/write-ifcfg-redhat.sh %{buildroot}/%{dra
%{dracutlibdir}/modules.d/99uefi-lib
# executable fixups
%attr(0755,root,root) %{dracutlibdir}/modules.d/00warpclock/warpclock.sh
%attr(0755,root,root) %{dracutlibdir}/modules.d/90livenet/livenet-generator.sh
%attr(0755,root,root) %{dracutlibdir}/modules.d/95dcssblk/parse-dcssblk.sh
%attr(0755,root,root) %{dracutlibdir}/modules.d/95dcssblk/module-setup.sh
%attr(0755,root,root) %{dracutlibdir}/modules.d/95fcoe/cleanup-fcoe.sh
%attr(0755,root,root) %{dracutlibdir}/modules.d/99suse/parse-suse-initrd.sh
%attr(0755,root,root) %{dracutlibdir}/modules.d/99suse/module-setup.sh
%attr(0755,root,root) %{dracutlibdir}/modules.d/00warpclock/warpclock.sh
%config(noreplace) %{_sysconfdir}/logrotate.d/dracut
%attr(0644,root,root) %ghost %config(missingok,noreplace) %{_localstatedir}/log/dracut.log
%attr(0640,root,root) %ghost %config(missingok,noreplace) %{_localstatedir}/log/dracut.log
%dir %{_unitdir}/initrd.target.wants
%dir %{_unitdir}/sysinit.target.wants
%{_unitdir}/*.service
%{_unitdir}/*/*.service
%dir %{_unitdir}/sysinit.target.wants
%config %{_sysconfdir}/bash_completion.d/dracut
%dir /boot/dracut
%dir %{_localstatedir}/lib/dracut
%dir %{_localstatedir}/lib/dracut/overlay
%changelog