import dracut-049-60.git20191129.el8
This commit is contained in:
parent
5396e9eee3
commit
0dc2f27864
@ -83,3 +83,4 @@ index f3af4d90..18186d62 100755
|
|||||||
inst_script "$moddir/fips.sh" /sbin/fips.sh
|
inst_script "$moddir/fips.sh" /sbin/fips.sh
|
||||||
|
|
||||||
inst_multiple sha512hmac rmmod insmod mount uname umount
|
inst_multiple sha512hmac rmmod insmod mount uname umount
|
||||||
|
|
||||||
|
51
SOURCES/0013.patch
Normal file
51
SOURCES/0013.patch
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
From a1435c3d535707f1d21aaf85e62175ff2bb1ad2b Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kairui Song <kasong@redhat.com>
|
||||||
|
Date: Thu, 14 Mar 2019 18:54:10 +0800
|
||||||
|
Subject: [PATCH] fips: ensure fs module for /boot is installed
|
||||||
|
|
||||||
|
When using dracut with --hostonly and --no-hostonly-default-device,
|
||||||
|
/boot will be inaccessible as dracut will most fs modules unless
|
||||||
|
specified. But FIPS require /boot to be accessible, and it will try
|
||||||
|
to mount it on boot. It will fail if corresponding fs module is missing.
|
||||||
|
|
||||||
|
For most case /boot will be a simple partition, include the fs module
|
||||||
|
will be enough for FIPS to mount it. For other cases users have to pass
|
||||||
|
extra parameters by themselves.
|
||||||
|
|
||||||
|
Suggested-by: Kenneth Dsouza <kdsouza@redhat.com>
|
||||||
|
Signed-off-by: Kairui Song <kasong@redhat.com>
|
||||||
|
---
|
||||||
|
modules.d/01fips/module-setup.sh | 12 +++++++++++-
|
||||||
|
1 file changed, 11 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/01fips/module-setup.sh b/modules.d/01fips/module-setup.sh
|
||||||
|
index 18186d62..89734a09 100755
|
||||||
|
--- a/modules.d/01fips/module-setup.sh
|
||||||
|
+++ b/modules.d/01fips/module-setup.sh
|
||||||
|
@@ -12,7 +12,7 @@ depends() {
|
||||||
|
|
||||||
|
# called by dracut
|
||||||
|
installkernel() {
|
||||||
|
- local _fipsmodules _mod
|
||||||
|
+ local _fipsmodules _mod _bootfstype
|
||||||
|
if [[ -f "${srcmods}/modules.fips" ]]; then
|
||||||
|
_fipsmodules="$(cat "${srcmods}/modules.fips")"
|
||||||
|
else
|
||||||
|
@@ -47,6 +47,16 @@ installkernel() {
|
||||||
|
echo "blacklist $_mod" >> "${initdir}/etc/modprobe.d/fips.conf"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
+
|
||||||
|
+ # with hostonly_default_device fs module for /boot is not installed by default
|
||||||
|
+ if [[ $hostonly ]] && [[ "$hostonly_default_device" == "no" ]]; then
|
||||||
|
+ _bootfstype=$(find_mp_fstype /boot)
|
||||||
|
+ if [[ -n "$_bootfstype" ]]; then
|
||||||
|
+ hostonly='' instmods $_bootfstype
|
||||||
|
+ else
|
||||||
|
+ dwarning "Can't determine fs type for /boot, FIPS check may fail."
|
||||||
|
+ fi
|
||||||
|
+ fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# called by dracut
|
||||||
|
|
49
SOURCES/0014.patch
Normal file
49
SOURCES/0014.patch
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
From 7c35556da4c803bbb08c96e96262e598d5c42274 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Harald Hoyer <harald@redhat.com>
|
||||||
|
Date: Tue, 21 Aug 2018 13:14:44 +0200
|
||||||
|
Subject: [PATCH] network: skip already enslaved interfaces
|
||||||
|
|
||||||
|
(cherry picked from commit f6e3b59e5ea6f52a25631557badc7f4dfabbd7ee)
|
||||||
|
|
||||||
|
Resolves: #1625042
|
||||||
|
---
|
||||||
|
modules.d/35network-legacy/ifup.sh | 6 +++++-
|
||||||
|
modules.d/40network/net-lib.sh | 7 +++++++
|
||||||
|
2 files changed, 12 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/35network-legacy/ifup.sh b/modules.d/35network-legacy/ifup.sh
|
||||||
|
index ea2a67ff..b4f5bf10 100755
|
||||||
|
--- a/modules.d/35network-legacy/ifup.sh
|
||||||
|
+++ b/modules.d/35network-legacy/ifup.sh
|
||||||
|
@@ -408,7 +408,11 @@ for p in $(getargs ip=); do
|
||||||
|
esac
|
||||||
|
|
||||||
|
# If this option isn't directed at our interface, skip it
|
||||||
|
- [ -n "$dev" ] && [ "$dev" != "$netif" ] && continue
|
||||||
|
+ if [ -n "$dev" ]; then
|
||||||
|
+ [ "$dev" != "$netif" ] && continue
|
||||||
|
+ else
|
||||||
|
+ iface_is_enslaved "$netif" && continue
|
||||||
|
+ fi
|
||||||
|
|
||||||
|
# Store config for later use
|
||||||
|
for i in ip srv gw mask hostname macaddr mtu dns1 dns2; do
|
||||||
|
diff --git a/modules.d/40network/net-lib.sh b/modules.d/40network/net-lib.sh
|
||||||
|
index 7b93f25e..f9569573 100755
|
||||||
|
--- a/modules.d/40network/net-lib.sh
|
||||||
|
+++ b/modules.d/40network/net-lib.sh
|
||||||
|
@@ -745,6 +745,13 @@ iface_has_link() {
|
||||||
|
iface_has_carrier "$@"
|
||||||
|
}
|
||||||
|
|
||||||
|
+iface_is_enslaved() {
|
||||||
|
+ local _li
|
||||||
|
+ _li=$(ip -o link show dev $1)
|
||||||
|
+ strstr "$li" " master " || return 1
|
||||||
|
+ return 0
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
find_iface_with_link() {
|
||||||
|
local iface_path="" iface=""
|
||||||
|
for iface_path in /sys/class/net/*; do
|
||||||
|
|
24
SOURCES/0015.patch
Normal file
24
SOURCES/0015.patch
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
From 4971a2c4eb4526cb88a5c9aff30c57527a746036 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lukas Nykryn <lnykryn@redhat.com>
|
||||||
|
Date: Tue, 16 Jul 2019 08:27:01 +0100
|
||||||
|
Subject: [PATCH] 01fips: add cfb cipher
|
||||||
|
|
||||||
|
Required by FIPS standard
|
||||||
|
---
|
||||||
|
modules.d/01fips/module-setup.sh | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/01fips/module-setup.sh b/modules.d/01fips/module-setup.sh
|
||||||
|
index 89734a09..f011f15d 100755
|
||||||
|
--- a/modules.d/01fips/module-setup.sh
|
||||||
|
+++ b/modules.d/01fips/module-setup.sh
|
||||||
|
@@ -24,7 +24,7 @@ installkernel() {
|
||||||
|
_fipsmodules+="crc32c crct10dif ghash "
|
||||||
|
|
||||||
|
# Ciphers:
|
||||||
|
- _fipsmodules+="cipher_null des3_ede aes "
|
||||||
|
+ _fipsmodules+="cipher_null des3_ede aes cfb "
|
||||||
|
|
||||||
|
# Modes/templates:
|
||||||
|
_fipsmodules+="ecb cbc ctr xts gcm ccm authenc hmac cmac "
|
||||||
|
|
86
SOURCES/0016.patch
Normal file
86
SOURCES/0016.patch
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
From 31116110ff0090324a568ce2aba6519a860d66b3 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Renaud=20M=C3=A9trich?= <rmetrich@redhat.com>
|
||||||
|
Date: Thu, 11 Jul 2019 10:50:40 +0200
|
||||||
|
Subject: [PATCH] rngd: new module running early during boot to help generating
|
||||||
|
entropy when system's default entropy sources are poor (e.g. use of SSD disks
|
||||||
|
or UEFI RNG not available)
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
On systems with low entropy at boot, the boot can take up to several
|
||||||
|
hours, specially when NBDE is used (e.g. clevis) which makes use of
|
||||||
|
the random number generator.
|
||||||
|
|
||||||
|
Enabling rngd service at boot early, because dracut-initqueue runs,
|
||||||
|
enables to initialize the random number generator in a couple of seconds
|
||||||
|
instead of minutes or hours.
|
||||||
|
|
||||||
|
Signed-off-by: Renaud Métrich <rmetrich@redhat.com>
|
||||||
|
(cherry picked from commit adee5b97bc5418b6e357342bb3be20568668aa55)
|
||||||
|
|
||||||
|
Resolves: #1726617
|
||||||
|
---
|
||||||
|
modules.d/06rngd/module-setup.sh | 39 +++++++++++++++++++++++++++++++++++++++
|
||||||
|
modules.d/06rngd/rngd.service | 7 +++++++
|
||||||
|
2 files changed, 46 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/modules.d/06rngd/module-setup.sh b/modules.d/06rngd/module-setup.sh
|
||||||
|
new file mode 100644
|
||||||
|
index 00000000..43d5c2d3
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/modules.d/06rngd/module-setup.sh
|
||||||
|
@@ -0,0 +1,39 @@
|
||||||
|
+#!/bin/bash
|
||||||
|
+# vim: set tabstop=8 shiftwidth=4 softtabstop=4 expandtab smarttab colorcolumn=80:
|
||||||
|
+#
|
||||||
|
+# Copyright (c) 2019 Red Hat, Inc.
|
||||||
|
+# Author: Renaud Métrich <rmetrich@redhat.com>
|
||||||
|
+#
|
||||||
|
+# This program is free software: you can redistribute it and/or modify
|
||||||
|
+# it under the terms of the GNU General Public License as published by
|
||||||
|
+# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
+# (at your option) any later version.
|
||||||
|
+#
|
||||||
|
+# This program is distributed in the hope that it will be useful,
|
||||||
|
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
+# GNU General Public License for more details.
|
||||||
|
+#
|
||||||
|
+# You should have received a copy of the GNU General Public License
|
||||||
|
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
+#
|
||||||
|
+
|
||||||
|
+depends() {
|
||||||
|
+ echo systemd
|
||||||
|
+ return 0
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+check() {
|
||||||
|
+ # if there's no rngd binary, no go.
|
||||||
|
+ require_binaries rngd || return 1
|
||||||
|
+
|
||||||
|
+ return 0
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+install() {
|
||||||
|
+ inst rngd
|
||||||
|
+ inst_simple "${moddir}/rngd.service" "${systemdsystemunitdir}/rngd.service"
|
||||||
|
+ mkdir -p "${initdir}${systemdsystemunitdir}/sysinit.target.wants"
|
||||||
|
+ ln -rfs "${initdir}${systemdsystemunitdir}/rngd.service" \
|
||||||
|
+ "${initdir}${systemdsystemunitdir}/sysinit.target.wants/rngd.service"
|
||||||
|
+}
|
||||||
|
diff --git a/modules.d/06rngd/rngd.service b/modules.d/06rngd/rngd.service
|
||||||
|
new file mode 100644
|
||||||
|
index 00000000..570fbedb
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/modules.d/06rngd/rngd.service
|
||||||
|
@@ -0,0 +1,7 @@
|
||||||
|
+[Unit]
|
||||||
|
+Description=Hardware RNG Entropy Gatherer Daemon
|
||||||
|
+DefaultDependencies=no
|
||||||
|
+Before=systemd-udevd.service
|
||||||
|
+
|
||||||
|
+[Service]
|
||||||
|
+ExecStart=/usr/sbin/rngd -f
|
||||||
|
|
22
SOURCES/0017.patch
Normal file
22
SOURCES/0017.patch
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
From d86dfcd148e5d726f00b8a83eeadb11aa0017fba Mon Sep 17 00:00:00 2001
|
||||||
|
From: Harald Hoyer <harald@redhat.com>
|
||||||
|
Date: Mon, 22 Jul 2019 14:07:26 +0200
|
||||||
|
Subject: [PATCH] dracut.spec: add 06rngd
|
||||||
|
|
||||||
|
---
|
||||||
|
dracut.spec | 1 +
|
||||||
|
1 file changed, 1 insertion(+)
|
||||||
|
|
||||||
|
diff --git a/dracut.spec b/dracut.spec
|
||||||
|
index de57703c..92c7f7bf 100644
|
||||||
|
--- a/dracut.spec
|
||||||
|
+++ b/dracut.spec
|
||||||
|
@@ -346,6 +346,7 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
||||||
|
%{dracutlibdir}/modules.d/03rescue
|
||||||
|
%{dracutlibdir}/modules.d/04watchdog
|
||||||
|
%{dracutlibdir}/modules.d/05busybox
|
||||||
|
+%{dracutlibdir}/modules.d/06rngd
|
||||||
|
%{dracutlibdir}/modules.d/10i18n
|
||||||
|
%{dracutlibdir}/modules.d/30convertfs
|
||||||
|
%{dracutlibdir}/modules.d/45url-lib
|
||||||
|
|
49
SOURCES/0018.patch
Normal file
49
SOURCES/0018.patch
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
From 927428e6a5e90b2214ee9edf15d4eb6c0fc5c203 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kairui Song <kasong@redhat.com>
|
||||||
|
Date: Mon, 11 Mar 2019 18:44:02 +0800
|
||||||
|
Subject: [PATCH] squash: squash systemd binary and udevadm
|
||||||
|
|
||||||
|
systemd binary and udevadm are not needed to be outside the squash
|
||||||
|
image. Some binaries are kept outside because they are required before
|
||||||
|
mounting the image, or after umounting the image (when switching root),
|
||||||
|
or they may block umounting the image. But we are using lazy umounting,
|
||||||
|
so actually nothing will block the umount.
|
||||||
|
|
||||||
|
Keep more binaries outside the squash image won't hurt but cost extra
|
||||||
|
memories, the idea of squash image is to save memory usage.
|
||||||
|
|
||||||
|
So, there is no reason to keep udevadm outside, that should be a debug
|
||||||
|
left over. For systemd binary, it's running when switch root happens,
|
||||||
|
But we have lazy umounted the image and overlay, once systemd process
|
||||||
|
exec the new systemd in new root, everything will be cleared by kernel.
|
||||||
|
|
||||||
|
Also tidy up the comment make it less confussing.
|
||||||
|
|
||||||
|
Signed-off-by: Kairui Song <kasong@redhat.com>
|
||||||
|
(cherry picked from commit e1e1f6e8e6747d8f32c065e267e0a57587818c9e)
|
||||||
|
|
||||||
|
Resolves: #1691705
|
||||||
|
---
|
||||||
|
dracut.sh | 8 +++++---
|
||||||
|
1 file changed, 5 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/dracut.sh b/dracut.sh
|
||||||
|
index e683a9bc..a0158f22 100755
|
||||||
|
--- a/dracut.sh
|
||||||
|
+++ b/dracut.sh
|
||||||
|
@@ -1772,9 +1772,11 @@ if dracut_module_included "squash"; then
|
||||||
|
mv $initdir/$folder $squash_dir/$folder
|
||||||
|
done
|
||||||
|
|
||||||
|
- # Reinstall required files, because we have moved some important folders to $squash_dir
|
||||||
|
- inst_multiple "echo" "sh" "mount" "modprobe" "mkdir" \
|
||||||
|
- "systemctl" "udevadm" "$systemdutildir/systemd"
|
||||||
|
+ # Reinstall required files for the squash image setup script.
|
||||||
|
+ # We have moved them inside the squashed image, but they need to be
|
||||||
|
+ # accessible before mounting the image. Also install systemctl,
|
||||||
|
+ # it's requires for switch-root, but we will umount the image before switch-root
|
||||||
|
+ inst_multiple "echo" "sh" "mount" "modprobe" "mkdir" "systemctl"
|
||||||
|
hostonly="" instmods "loop" "squashfs" "overlay"
|
||||||
|
|
||||||
|
for folder in "${squash_candidate[@]}"; do
|
||||||
|
|
71
SOURCES/0019.patch
Normal file
71
SOURCES/0019.patch
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
From b6d52b504fc7eefc3f405f75463d9e818471ee99 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kairui Song <kasong@redhat.com>
|
||||||
|
Date: Mon, 11 Mar 2019 19:46:19 +0800
|
||||||
|
Subject: [PATCH] squash: fix and simplify required_in_root
|
||||||
|
|
||||||
|
If required target is a symbol link, create the link then following the
|
||||||
|
link. If it's a directory, create new directory, else just move it.
|
||||||
|
|
||||||
|
Signed-off-by: Kairui Song <kasong@redhat.com>
|
||||||
|
(cherry picked from commit 11ce69e4bd9172cf54251ea62bb4a5ead1700fd6)
|
||||||
|
|
||||||
|
Resolves: #1691705
|
||||||
|
---
|
||||||
|
dracut.sh | 42 +++++++++++++++++++-----------------------
|
||||||
|
1 file changed, 19 insertions(+), 23 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/dracut.sh b/dracut.sh
|
||||||
|
index a0158f22..6de88b3e 100755
|
||||||
|
--- a/dracut.sh
|
||||||
|
+++ b/dracut.sh
|
||||||
|
@@ -1811,30 +1811,26 @@ if dracut_module_included "squash"; then
|
||||||
|
required_in_root $(dirname $file)
|
||||||
|
fi
|
||||||
|
|
||||||
|
- if [[ -d $_sqsh_file ]]; then
|
||||||
|
- if [[ -L $_sqsh_file ]]; then
|
||||||
|
- cp --preserve=all -P $_sqsh_file $_init_file
|
||||||
|
- else
|
||||||
|
- mkdir $_init_file
|
||||||
|
- fi
|
||||||
|
+ if [[ -L $_sqsh_file ]]; then
|
||||||
|
+ cp --preserve=all -P $_sqsh_file $_init_file
|
||||||
|
+ _sqsh_file=$(realpath $_sqsh_file 2>/dev/null)
|
||||||
|
+ if [[ -e $_sqsh_file ]] && [[ "$_sqsh_file" == "$squash_dir"* ]]; then
|
||||||
|
+ # Relative symlink
|
||||||
|
+ required_in_root ${_sqsh_file#$squash_dir/}
|
||||||
|
+ return
|
||||||
|
+ fi
|
||||||
|
+ if [[ -e $squash_dir$_sqsh_file ]]; then
|
||||||
|
+ # Absolute symlink
|
||||||
|
+ required_in_root ${_sqsh_file#/}
|
||||||
|
+ return
|
||||||
|
+ fi
|
||||||
|
+ required_in_root ${module_spec#$squash_dir/}
|
||||||
|
else
|
||||||
|
- if [[ -L $_sqsh_file ]]; then
|
||||||
|
- cp --preserve=all -P $_sqsh_file $_init_file
|
||||||
|
- _sqsh_file=$(realpath $_sqsh_file 2>/dev/null)
|
||||||
|
- if [[ -e $_sqsh_file ]] && [[ "$_sqsh_file" == "$squash_dir"* ]]; then
|
||||||
|
- # Relative symlink
|
||||||
|
- required_in_root ${_sqsh_file#$squash_dir/}
|
||||||
|
- return
|
||||||
|
- fi
|
||||||
|
- if [[ -e $squash_dir$_sqsh_file ]]; then
|
||||||
|
- # Absolute symlink
|
||||||
|
- required_in_root ${_sqsh_file#/}
|
||||||
|
- return
|
||||||
|
- fi
|
||||||
|
- required_in_root ${module_spec#$squash_dir/}
|
||||||
|
- else
|
||||||
|
- mv $_sqsh_file $_init_file
|
||||||
|
- fi
|
||||||
|
+ if [[ -d $_sqsh_file ]]; then
|
||||||
|
+ mkdir $_init_file
|
||||||
|
+ else
|
||||||
|
+ mv $_sqsh_file $_init_file
|
||||||
|
+ fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
94
SOURCES/0020.patch
Normal file
94
SOURCES/0020.patch
Normal file
@ -0,0 +1,94 @@
|
|||||||
|
From 829ed8ef5cca250fac475ad6b0265c792c3af015 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kairui Song <kasong@redhat.com>
|
||||||
|
Date: Wed, 13 Mar 2019 17:36:53 +0800
|
||||||
|
Subject: [PATCH] squash: also squash systemctl if switch-root is not needed
|
||||||
|
|
||||||
|
systemctl need to be accessible on switch-root, but we unmount the
|
||||||
|
squash image on switch-root, so it will fail. systemctl depends on a lot
|
||||||
|
of libraries, squash them can save more RAM. So allow modules
|
||||||
|
(eg. kdump) to tell dracut that switch-root will be intercepted,
|
||||||
|
then we don't need to take care of that.
|
||||||
|
|
||||||
|
Signed-off-by: Kairui Song <kasong@redhat.com>
|
||||||
|
(cherry picked from commit 3ee0ca5eb74be5d1fbd0e6d643f6fff06234177f)
|
||||||
|
|
||||||
|
Resolves: #1691705
|
||||||
|
---
|
||||||
|
dracut-init.sh | 4 ++++
|
||||||
|
dracut.sh | 40 ++++++++++++++++++++++------------------
|
||||||
|
2 files changed, 26 insertions(+), 18 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/dracut-init.sh b/dracut-init.sh
|
||||||
|
index 50d23e2d..b1ac9966 100644
|
||||||
|
--- a/dracut-init.sh
|
||||||
|
+++ b/dracut-init.sh
|
||||||
|
@@ -150,6 +150,10 @@ dracut_module_included() {
|
||||||
|
[[ " $mods_to_load $modules_loaded " == *\ $*\ * ]]
|
||||||
|
}
|
||||||
|
|
||||||
|
+dracut_no_switch_root() {
|
||||||
|
+ >"$initdir/lib/dracut/no-switch-root"
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
if ! [[ $DRACUT_INSTALL ]]; then
|
||||||
|
DRACUT_INSTALL=$(find_binary dracut-install)
|
||||||
|
fi
|
||||||
|
diff --git a/dracut.sh b/dracut.sh
|
||||||
|
index 6de88b3e..8144a16e 100755
|
||||||
|
--- a/dracut.sh
|
||||||
|
+++ b/dracut.sh
|
||||||
|
@@ -1772,24 +1772,6 @@ if dracut_module_included "squash"; then
|
||||||
|
mv $initdir/$folder $squash_dir/$folder
|
||||||
|
done
|
||||||
|
|
||||||
|
- # Reinstall required files for the squash image setup script.
|
||||||
|
- # We have moved them inside the squashed image, but they need to be
|
||||||
|
- # accessible before mounting the image. Also install systemctl,
|
||||||
|
- # it's requires for switch-root, but we will umount the image before switch-root
|
||||||
|
- inst_multiple "echo" "sh" "mount" "modprobe" "mkdir" "systemctl"
|
||||||
|
- hostonly="" instmods "loop" "squashfs" "overlay"
|
||||||
|
-
|
||||||
|
- for folder in "${squash_candidate[@]}"; do
|
||||||
|
- # Remove duplicated files in squashfs image, save some more space
|
||||||
|
- [[ ! -d $initdir/$folder/ ]] && continue
|
||||||
|
- for file in $(find $initdir/$folder/ -not -type d);
|
||||||
|
- do
|
||||||
|
- if [[ -e $squash_dir${file#$initdir} ]]; then
|
||||||
|
- mv $squash_dir${file#$initdir} $file
|
||||||
|
- fi
|
||||||
|
- done
|
||||||
|
- done
|
||||||
|
-
|
||||||
|
# Move some files out side of the squash image, including:
|
||||||
|
# - Files required to boot and mount the squashfs image
|
||||||
|
# - Files need to be accessable without mounting the squash image
|
||||||
|
@@ -1851,6 +1833,28 @@ if dracut_module_included "squash"; then
|
||||||
|
ln -s squash/init.sh $initdir/init
|
||||||
|
ln -s squash/shutdown.sh $initdir/shutdown
|
||||||
|
|
||||||
|
+ # Reinstall required files for the squash image setup script.
|
||||||
|
+ # We have moved them inside the squashed image, but they need to be
|
||||||
|
+ # accessible before mounting the image.
|
||||||
|
+ inst_multiple "echo" "sh" "mount" "modprobe" "mkdir"
|
||||||
|
+ hostonly="" instmods "loop" "squashfs" "overlay"
|
||||||
|
+
|
||||||
|
+ # Only keep systemctl outsite if we need switch root
|
||||||
|
+ if [[ ! -f "$initdir/lib/dracut/no-switch-root" ]]; then
|
||||||
|
+ inst "systemctl"
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ for folder in "${squash_candidate[@]}"; do
|
||||||
|
+ # Remove duplicated files in squashfs image, save some more space
|
||||||
|
+ [[ ! -d $initdir/$folder/ ]] && continue
|
||||||
|
+ for file in $(find $initdir/$folder/ -not -type d);
|
||||||
|
+ do
|
||||||
|
+ if [[ -e $squash_dir${file#$initdir} ]]; then
|
||||||
|
+ mv $squash_dir${file#$initdir} $file
|
||||||
|
+ fi
|
||||||
|
+ done
|
||||||
|
+ done
|
||||||
|
+
|
||||||
|
mksquashfs $squash_dir $squash_img -comp xz -b 64K -Xdict-size 100% &> /dev/null
|
||||||
|
|
||||||
|
if [[ $? != 0 ]]; then
|
||||||
|
|
94
SOURCES/0021.patch
Normal file
94
SOURCES/0021.patch
Normal file
@ -0,0 +1,94 @@
|
|||||||
|
From 7ee74e539dba61c3765afe34426b085eff0de027 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kairui Song <kasong@redhat.com>
|
||||||
|
Date: Thu, 21 Feb 2019 13:18:37 +0800
|
||||||
|
Subject: [PATCH] dracut: let module handling function accept optional path
|
||||||
|
option
|
||||||
|
|
||||||
|
Let the caller pass in the module path instead of try to find the module
|
||||||
|
path everytime. This helps optimize the overall runtime.
|
||||||
|
|
||||||
|
Test results (3 rounds) on Fedora 30 in KVM VM with 8 CPUs, 2G memory, HDD:
|
||||||
|
|
||||||
|
$ time ./dracut.sh --local --quiet --hostonly --hostonly-cmdline --hostonly-i18n --hostonly-mode 'strict' -o 'plymouth dash resume ifcfg' --mount '/dev/mapper/fedora-root /sysroot xfs defaults' --no-hostonly-default-device -f initramfs.img
|
||||||
|
Before the commit:
|
||||||
|
real 0m11.782s | real 0m11.505s | real 0m11.958s
|
||||||
|
user 0m9.169s | user 0m9.218s | user 0m9.327s
|
||||||
|
sys 0m10.839s | sys 0m10.829s | sys 0m10.925s
|
||||||
|
|
||||||
|
After this commit:
|
||||||
|
real 0m9.866s | real 0m9.580s | real 0m9.638s
|
||||||
|
user 0m9.048s | user 0m9.142s | user 0m9.120s
|
||||||
|
sys 0m7.411s | sys 0m7.775s | sys 0m7.745s
|
||||||
|
|
||||||
|
Test result of building a ordinary image:
|
||||||
|
|
||||||
|
$ time ./dracut.sh --local --quiet -f initramfs.img
|
||||||
|
Before the commit:
|
||||||
|
real 0m34.697s | real 0m34.371s | real 0m35.122s
|
||||||
|
user 0m27.608s | user 0m27.524s | user 0m27.705s
|
||||||
|
sys 0m22.341s | sys 0m22.032s | sys 0m22.246s
|
||||||
|
|
||||||
|
After the commit:
|
||||||
|
real 0m31.914s | real 0m31.006 | real 0m31.289ss
|
||||||
|
user 0m27.315s | user 0m27.324 | user 0m27.290ss
|
||||||
|
sys 0m19.051s | sys 0m18.916 | sys 0m19.022ss
|
||||||
|
|
||||||
|
This will have an ~2s speed up.
|
||||||
|
|
||||||
|
Signed-off-by: Kairui Song <kasong@redhat.com>
|
||||||
|
(cherry picked from commit 5916d31b24ad9eb21fd376929a96c459813315a1)
|
||||||
|
|
||||||
|
Cherry-picked from: 5916d31b
|
||||||
|
Resolves: #1734047
|
||||||
|
---
|
||||||
|
dracut-init.sh | 4 ++++
|
||||||
|
dracut.sh | 8 ++++----
|
||||||
|
2 files changed, 8 insertions(+), 4 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/dracut-init.sh b/dracut-init.sh
|
||||||
|
index b1ac9966..ab07cabf 100644
|
||||||
|
--- a/dracut-init.sh
|
||||||
|
+++ b/dracut-init.sh
|
||||||
|
@@ -154,6 +154,10 @@ dracut_no_switch_root() {
|
||||||
|
>"$initdir/lib/dracut/no-switch-root"
|
||||||
|
}
|
||||||
|
|
||||||
|
+dracut_module_path() {
|
||||||
|
+ echo ${dracutbasedir}/modules.d/??${1} | { read a b; echo "$a"; }
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
if ! [[ $DRACUT_INSTALL ]]; then
|
||||||
|
DRACUT_INSTALL=$(find_binary dracut-install)
|
||||||
|
fi
|
||||||
|
diff --git a/dracut.sh b/dracut.sh
|
||||||
|
index 8144a16e..f270af76 100755
|
||||||
|
--- a/dracut.sh
|
||||||
|
+++ b/dracut.sh
|
||||||
|
@@ -1373,7 +1373,7 @@ do_print_cmdline()
|
||||||
|
for moddir in "$dracutbasedir/modules.d"/[0-9][0-9]*; do
|
||||||
|
_d_mod=${moddir##*/}; _d_mod=${_d_mod#[0-9][0-9]}
|
||||||
|
[[ ${_mods_to_print[$_d_mod]} ]] || continue
|
||||||
|
- module_cmdline "$_d_mod"
|
||||||
|
+ module_cmdline "$_d_mod" "$moddir"
|
||||||
|
done
|
||||||
|
unset moddir
|
||||||
|
}
|
||||||
|
@@ -1454,14 +1454,14 @@ for moddir in "$dracutbasedir/modules.d"/[0-9][0-9]*; do
|
||||||
|
dinfo "*** Including module: $_d_mod ***"
|
||||||
|
fi
|
||||||
|
if [[ $kernel_only == yes ]]; then
|
||||||
|
- module_installkernel "$_d_mod" || {
|
||||||
|
+ module_installkernel "$_d_mod" "$moddir" || {
|
||||||
|
dfatal "installkernel failed in module $_d_mod"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
else
|
||||||
|
- module_install "$_d_mod"
|
||||||
|
+ module_install "$_d_mod" "$moddir"
|
||||||
|
if [[ $no_kernel != yes ]]; then
|
||||||
|
- module_installkernel "$_d_mod" || {
|
||||||
|
+ module_installkernel "$_d_mod" "$moddir" || {
|
||||||
|
dfatal "installkernel failed in module $_d_mod"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
36
SOURCES/0022.patch
Normal file
36
SOURCES/0022.patch
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
From 17cd55169c3549d85ba3e4d7e0e81c496d1b2940 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lianbo Jiang <lijiang@redhat.com>
|
||||||
|
Date: Mon, 13 May 2019 16:09:25 +0800
|
||||||
|
Subject: [PATCH] 99base: enable the initqueue in both 'dracut --add-device'
|
||||||
|
and 'dracut --mount' cases.
|
||||||
|
|
||||||
|
The commit 9f3c31cd8d68 ("99base: enable initqueue if extra devices are added")
|
||||||
|
only covers 'dracut --add-device' case, but it did not cover 'dracut --mount'
|
||||||
|
case, which causes the kdump failure in the Amazon virtual machine.
|
||||||
|
|
||||||
|
Lets make sure that the initqueue is enabled in both cases in order to wake up
|
||||||
|
the device in time.
|
||||||
|
|
||||||
|
Reported-by: Xiao Liang <xiliang@redhat.com>
|
||||||
|
Signed-off-by: Lianbo Jiang <lijiang@redhat.com>
|
||||||
|
(cherry picked from commit e0fc62f619ba55a96179382e22f7665e969c3d42)
|
||||||
|
|
||||||
|
Resolves: #1678094
|
||||||
|
---
|
||||||
|
modules.d/99base/module-setup.sh | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/99base/module-setup.sh b/modules.d/99base/module-setup.sh
|
||||||
|
index 21523fc9..c9ead01d 100755
|
||||||
|
--- a/modules.d/99base/module-setup.sh
|
||||||
|
+++ b/modules.d/99base/module-setup.sh
|
||||||
|
@@ -93,7 +93,7 @@ install() {
|
||||||
|
|
||||||
|
## save host_devs which we need bring up
|
||||||
|
if [[ $hostonly_cmdline == "yes" ]]; then
|
||||||
|
- if [[ -n $add_device ]]; then
|
||||||
|
+ if [[ -n "${host_devs[@]}" ]]; then
|
||||||
|
dracut_need_initqueue
|
||||||
|
fi
|
||||||
|
if [[ -f "$initdir/lib/dracut/need-initqueue" ]] || ! dracut_module_included "systemd"; then
|
||||||
|
|
34
SOURCES/0023.patch
Normal file
34
SOURCES/0023.patch
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
From 1851348709df5413a767faecdee908534baf0da1 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kairui Song <kasong@redhat.com>
|
||||||
|
Date: Wed, 12 Jun 2019 14:27:44 +0800
|
||||||
|
Subject: [PATCH] 95fcoe: load 'libfcoe' module as a fallback
|
||||||
|
|
||||||
|
The kernel may only enable 'libfcoe' module. Some modules like bnx2fc
|
||||||
|
provides FCoE but only depend on 'libfcoe'. Loading 'fcoe' module may
|
||||||
|
fail but the kernel do support FCoE.
|
||||||
|
|
||||||
|
'libfcoe' will be installed as a dependency when installing block device
|
||||||
|
drivers if it's required. So no need to install it in installkernel.
|
||||||
|
|
||||||
|
Signed-off-by: Kairui Song <kasong@redhat.com>
|
||||||
|
(cherry picked from commit 65fe1af2eca7d0ed340520577ab861fcd695b34a)
|
||||||
|
|
||||||
|
Resolves: #1719645
|
||||||
|
---
|
||||||
|
modules.d/95fcoe/parse-fcoe.sh | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/95fcoe/parse-fcoe.sh b/modules.d/95fcoe/parse-fcoe.sh
|
||||||
|
index 75cca9a5..12701cdb 100755
|
||||||
|
--- a/modules.d/95fcoe/parse-fcoe.sh
|
||||||
|
+++ b/modules.d/95fcoe/parse-fcoe.sh
|
||||||
|
@@ -18,7 +18,7 @@
|
||||||
|
# If it's not set we don't continue
|
||||||
|
[ -z "$fcoe" ] && return
|
||||||
|
|
||||||
|
-[ -e /sys/bus/fcoe/ctlr_create ] || modprobe -b -a fcoe || die "FCoE requested but kernel/initrd does not support FCoE"
|
||||||
|
+[ -e /sys/bus/fcoe/ctlr_create ] || modprobe -b -a fcoe || modprobe -b -a libfcoe || die "FCoE requested but kernel/initrd does not support FCoE"
|
||||||
|
|
||||||
|
initqueue --onetime modprobe -b -q bnx2fc
|
||||||
|
|
||||||
|
|
36
SOURCES/0024.patch
Normal file
36
SOURCES/0024.patch
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
From 9b2497dffb8f699ce040cdbafa967f5fe02b57b6 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lukas Nykryn <lnykryn@redhat.com>
|
||||||
|
Date: Fri, 2 Aug 2019 14:26:23 +0200
|
||||||
|
Subject: [PATCH] 90kernel-modules-extra: don't resolve symlinks before instmod
|
||||||
|
|
||||||
|
When you install a third-party driver, you will probably end in a
|
||||||
|
situation, where the module will be in a different directory and
|
||||||
|
in $depmod_module_dir you will only have symlink. If we resolve the
|
||||||
|
symlink before we pass the module path to instmod, the dracut-install
|
||||||
|
will only include the module with its original path, but not the
|
||||||
|
symlink. Hence the module can't be automatically loaded.
|
||||||
|
|
||||||
|
Dracut-install is clever enough to handle symlinks and will include both
|
||||||
|
the symlink and the module to the initrd.
|
||||||
|
|
||||||
|
(cherry picked from commit d1afff43aea01c8d43817adf3ac4041dd4b9f022)
|
||||||
|
|
||||||
|
Resolves: #1720275
|
||||||
|
---
|
||||||
|
modules.d/90kernel-modules-extra/module-setup.sh | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/90kernel-modules-extra/module-setup.sh b/modules.d/90kernel-modules-extra/module-setup.sh
|
||||||
|
index c0a2b7f9..1706c822 100755
|
||||||
|
--- a/modules.d/90kernel-modules-extra/module-setup.sh
|
||||||
|
+++ b/modules.d/90kernel-modules-extra/module-setup.sh
|
||||||
|
@@ -187,7 +187,7 @@ installkernel()
|
||||||
|
printf "^%s\.ko(\.gz|\.bz2|\.xz)?:\n" "${pathlist[@]}" \
|
||||||
|
| (LANG=C grep -E -o -f - -- "$depmod_modules_dep" || exit 0) \
|
||||||
|
| tr -d ':' \
|
||||||
|
- | (cd "$depmod_module_dir" || exit; xargs -r realpath -e --) \
|
||||||
|
+ | (cd "$depmod_module_dir" || exit; xargs -r realpath -se --) \
|
||||||
|
| instmods || return 1
|
||||||
|
|
||||||
|
return 0
|
||||||
|
|
26
SOURCES/0025.patch
Normal file
26
SOURCES/0025.patch
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
From 3464297288b50a062e1094e57d46ad21e51b351b Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lukas Nykryn <lnykryn@redhat.com>
|
||||||
|
Date: Tue, 6 Aug 2019 10:54:09 +0200
|
||||||
|
Subject: [PATCH] net-lib: fix typo $li -> $_li
|
||||||
|
|
||||||
|
(cherry picked from commit cd97d8d2c0646b95aee47efd5eee39f29d617a67)
|
||||||
|
|
||||||
|
Resolves: #1625042
|
||||||
|
---
|
||||||
|
modules.d/40network/net-lib.sh | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/40network/net-lib.sh b/modules.d/40network/net-lib.sh
|
||||||
|
index f9569573..ad78d225 100755
|
||||||
|
--- a/modules.d/40network/net-lib.sh
|
||||||
|
+++ b/modules.d/40network/net-lib.sh
|
||||||
|
@@ -748,7 +748,7 @@ iface_has_link() {
|
||||||
|
iface_is_enslaved() {
|
||||||
|
local _li
|
||||||
|
_li=$(ip -o link show dev $1)
|
||||||
|
- strstr "$li" " master " || return 1
|
||||||
|
+ strstr "$_li" " master " || return 1
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
|
38
SOURCES/0026.patch
Normal file
38
SOURCES/0026.patch
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
From 95bbcaa8550534f03b332487ef3a2ed6650424fe Mon Sep 17 00:00:00 2001
|
||||||
|
From: Frantisek Sumsal <frantisek@sumsal.cz>
|
||||||
|
Date: Wed, 21 Aug 2019 11:16:07 +0200
|
||||||
|
Subject: [PATCH] git2spec: avoid malforming of SHA-1 hashes
|
||||||
|
|
||||||
|
When a SHA-1 hash of a specific commit is used as a tag, the regex
|
||||||
|
shenanigans later in the script can (and will) corrupt it in certain
|
||||||
|
cases.
|
||||||
|
|
||||||
|
e.g.:
|
||||||
|
$ perl -e '
|
||||||
|
$tag="6e8cd92261577230daa1098f7e05ec198c3c4281";
|
||||||
|
$tag=~s/[^0-9]+?([0-9]+)/$1/;
|
||||||
|
print("$tag\n");
|
||||||
|
'
|
||||||
|
68cd92261577230daa1098f7e05ec198c3c4281
|
||||||
|
|
||||||
|
(Notice the missing 'e')
|
||||||
|
|
||||||
|
Let's fix this by limiting the regex's scope to a non-SHA-1 tags only.
|
||||||
|
---
|
||||||
|
git2spec.pl | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/git2spec.pl b/git2spec.pl
|
||||||
|
index 7853791e..9ddc3805 100755
|
||||||
|
--- a/git2spec.pl
|
||||||
|
+++ b/git2spec.pl
|
||||||
|
@@ -37,7 +37,7 @@ $tag=`git describe --abbrev=0 --tags` if not defined $tag;
|
||||||
|
chomp($tag);
|
||||||
|
my @patches=&create_patches($tag, $pdir);
|
||||||
|
my $num=$#patches + 2;
|
||||||
|
-$tag=~s/[^0-9]+?([0-9]+)/$1/;
|
||||||
|
+$tag=~s/[^0-9]+?([0-9]+)/$1/ if $tag !~ /\b[0-9a-f]{5,40}\b/;
|
||||||
|
my $release="$num.git$datestr";
|
||||||
|
$release="1" if $num == 1;
|
||||||
|
|
||||||
|
|
25
SOURCES/0027.patch
Normal file
25
SOURCES/0027.patch
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
From d3f542cc9d0135a408be7ba995b8adad80bcd606 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Frantisek Sumsal <frantisek@sumsal.cz>
|
||||||
|
Date: Wed, 21 Aug 2019 14:06:29 +0200
|
||||||
|
Subject: [PATCH] travis: fetch only tags
|
||||||
|
|
||||||
|
The original `git pull` would try to pull & merge changes from the
|
||||||
|
master branch, which breaks CI runs on PRs based on non-master branches
|
||||||
|
---
|
||||||
|
.travis.yml | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/.travis.yml b/.travis.yml
|
||||||
|
index f913db57..efb0df1b 100644
|
||||||
|
--- a/.travis.yml
|
||||||
|
+++ b/.travis.yml
|
||||||
|
@@ -29,7 +29,7 @@ before_script:
|
||||||
|
sudo modprobe kvm-intel nested=1 || :
|
||||||
|
sudo modprobe kvm-amd nested=1 || :
|
||||||
|
dmesg | tail || :
|
||||||
|
- - git pull --depth=100
|
||||||
|
+ - git fetch --tags --unshallow
|
||||||
|
- |
|
||||||
|
git describe --abbrev=0 --tags || :
|
||||||
|
git describe --tags || :
|
||||||
|
|
98
SOURCES/0028.patch
Normal file
98
SOURCES/0028.patch
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
From e3b2b02c7f5b4e9f1d2a3cfe8749534959e29e3e Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||||
|
Date: Fri, 21 Jun 2019 18:39:48 +0200
|
||||||
|
Subject: [PATCH] fs-lib: drop a bashism
|
||||||
|
|
||||||
|
Bash 5 apparently longer propagates variable assignments to local variables
|
||||||
|
in front of function calls when in POSIX mode:
|
||||||
|
|
||||||
|
[lkundrak@demiurge ~]$ cat feh.sh
|
||||||
|
print_VAR () {
|
||||||
|
echo "$VAR";
|
||||||
|
}
|
||||||
|
|
||||||
|
testfunc () {
|
||||||
|
local VAR="OLD"
|
||||||
|
VAR=NEW print_VAR
|
||||||
|
}
|
||||||
|
|
||||||
|
testfunc
|
||||||
|
[lkundrak@demiurge ~]$ bash4 --posix feh.sh
|
||||||
|
NEW
|
||||||
|
[lkundrak@demiurge ~]$ bash5 --posix feh.sh
|
||||||
|
OLD
|
||||||
|
[lkundrak@demiurge ~]$ bash5 feh.sh
|
||||||
|
NEW
|
||||||
|
[lkundrak@demiurge ~]$
|
||||||
|
|
||||||
|
It works the way it did in Bash 4 in non-POSIX mode, for external programs,
|
||||||
|
or for non-local variables. Don't ask me why -- it's probably some
|
||||||
|
compatibility thing for some sad old people.
|
||||||
|
|
||||||
|
However, this precisely happens when fsck_single() is calling into the
|
||||||
|
fsck_drv_com(), assigned to _drv by fsck_able(). That ruins the
|
||||||
|
TEST-70-BONDBRIDGETEAMVLAN test's server and probably more.
|
||||||
|
|
||||||
|
Let's pass the fsck driver binary via the function argument instead. It's
|
||||||
|
less messy anyway.
|
||||||
|
|
||||||
|
(cherry picked from commit 43c8c4ce0471abbb8c0fc4b8be2515cebc636030)
|
||||||
|
---
|
||||||
|
modules.d/99fs-lib/fs-lib.sh | 13 +++++++------
|
||||||
|
1 file changed, 7 insertions(+), 6 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/99fs-lib/fs-lib.sh b/modules.d/99fs-lib/fs-lib.sh
|
||||||
|
index d39ca1b7..11e795d9 100755
|
||||||
|
--- a/modules.d/99fs-lib/fs-lib.sh
|
||||||
|
+++ b/modules.d/99fs-lib/fs-lib.sh
|
||||||
|
@@ -44,22 +44,22 @@ fsck_able() {
|
||||||
|
;;
|
||||||
|
ext?)
|
||||||
|
type e2fsck >/dev/null 2>&1 &&
|
||||||
|
- _drv="_drv=e2fsck fsck_drv_com" &&
|
||||||
|
+ _drv="fsck_drv_com e2fsck" &&
|
||||||
|
return 0
|
||||||
|
;;
|
||||||
|
f2fs)
|
||||||
|
type fsck.f2fs >/dev/null 2>&1 &&
|
||||||
|
- _drv="_drv=fsck.f2fs fsck_drv_com" &&
|
||||||
|
+ _drv="fsck_drv_com fsck.f2fs" &&
|
||||||
|
return 0
|
||||||
|
;;
|
||||||
|
jfs)
|
||||||
|
type jfs_fsck >/dev/null 2>&1 &&
|
||||||
|
- _drv="_drv=jfs_fsck fsck_drv_com" &&
|
||||||
|
+ _drv="fsck_drv_com jfs_fsck" &&
|
||||||
|
return 0
|
||||||
|
;;
|
||||||
|
reiserfs)
|
||||||
|
type reiserfsck >/dev/null 2>&1 &&
|
||||||
|
- _drv="_drv=reiserfsck fsck_drv_com" &&
|
||||||
|
+ _drv="fsck_drv_com reiserfsck" &&
|
||||||
|
return 0
|
||||||
|
;;
|
||||||
|
btrfs)
|
||||||
|
@@ -70,12 +70,12 @@ fsck_able() {
|
||||||
|
;;
|
||||||
|
nfs*)
|
||||||
|
# nfs can be a nop, returning success
|
||||||
|
- _drv="_drv=none :" &&
|
||||||
|
+ _drv=":" &&
|
||||||
|
return 0
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
type fsck >/dev/null 2>&1 &&
|
||||||
|
- _drv="_drv=fsck fsck_drv_std" &&
|
||||||
|
+ _drv="fsck_drv_std fsck" &&
|
||||||
|
return 0
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
@@ -97,6 +97,7 @@ fsck_drv_btrfs() {
|
||||||
|
|
||||||
|
# common code for checkers that follow usual subset of options and return codes
|
||||||
|
fsck_drv_com() {
|
||||||
|
+ local _drv="$1"
|
||||||
|
local _ret
|
||||||
|
local _out
|
||||||
|
|
||||||
|
|
79
SOURCES/0029.patch
Normal file
79
SOURCES/0029.patch
Normal file
@ -0,0 +1,79 @@
|
|||||||
|
From e671c3a06a7e58461d4e9c9f3546cf6eac809300 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Harald Hoyer <harald@redhat.com>
|
||||||
|
Date: Tue, 4 Dec 2018 10:27:17 +0100
|
||||||
|
Subject: [PATCH] 95iscsi/module-setup.sh: do not require 'hostname' anymore
|
||||||
|
|
||||||
|
(cherry picked from commit ebe1821635dd99f07c817179ee5358d27aab53c5)
|
||||||
|
|
||||||
|
[lkundrak@v3.sk: fixes TEST-30 that fails with: dracut: dracut module
|
||||||
|
'iscsi' will not be installed, because command 'hostname' could not be
|
||||||
|
found!]
|
||||||
|
---
|
||||||
|
modules.d/40network/netroot.sh | 2 +-
|
||||||
|
modules.d/95iscsi/module-setup.sh | 4 ++--
|
||||||
|
modules.d/98dracut-systemd/dracut-cmdline.sh | 2 +-
|
||||||
|
modules.d/99base/init.sh | 2 +-
|
||||||
|
4 files changed, 5 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/40network/netroot.sh b/modules.d/40network/netroot.sh
|
||||||
|
index 207364cd..654cfc72 100755
|
||||||
|
--- a/modules.d/40network/netroot.sh
|
||||||
|
+++ b/modules.d/40network/netroot.sh
|
||||||
|
@@ -66,7 +66,7 @@ if [ -z "$2" ]; then
|
||||||
|
|
||||||
|
# Check: do we really know how to handle (net)root?
|
||||||
|
[ -z "$root" ] && die "No or empty root= argument"
|
||||||
|
- [ -z "$rootok" ] && die "Don't know how to handle 'root=$root'"
|
||||||
|
+ [ -z "$rootok" ] && die "X2 Don't know how to handle 'root=$root'"
|
||||||
|
|
||||||
|
handler=${netroot%%:*}
|
||||||
|
handler=${handler%%4}
|
||||||
|
diff --git a/modules.d/95iscsi/module-setup.sh b/modules.d/95iscsi/module-setup.sh
|
||||||
|
index 79af4a47..f6f3520d 100755
|
||||||
|
--- a/modules.d/95iscsi/module-setup.sh
|
||||||
|
+++ b/modules.d/95iscsi/module-setup.sh
|
||||||
|
@@ -4,7 +4,7 @@
|
||||||
|
check() {
|
||||||
|
local _rootdev
|
||||||
|
# If our prerequisites are not met, fail anyways.
|
||||||
|
- require_binaries hostname iscsi-iname iscsiadm iscsid || return 1
|
||||||
|
+ require_binaries iscsi-iname iscsiadm iscsid || return 1
|
||||||
|
|
||||||
|
# If hostonly was requested, fail the check if we are not actually
|
||||||
|
# booting from root.
|
||||||
|
@@ -206,7 +206,7 @@ cmdline() {
|
||||||
|
install() {
|
||||||
|
inst_multiple -o iscsiuio
|
||||||
|
inst_libdir_file 'libgcc_s.so*'
|
||||||
|
- inst_multiple umount hostname iscsi-iname iscsiadm iscsid
|
||||||
|
+ inst_multiple umount iscsi-iname iscsiadm iscsid
|
||||||
|
|
||||||
|
inst_multiple -o \
|
||||||
|
$systemdsystemunitdir/iscsid.socket \
|
||||||
|
diff --git a/modules.d/98dracut-systemd/dracut-cmdline.sh b/modules.d/98dracut-systemd/dracut-cmdline.sh
|
||||||
|
index bff9435a..89c52d13 100755
|
||||||
|
--- a/modules.d/98dracut-systemd/dracut-cmdline.sh
|
||||||
|
+++ b/modules.d/98dracut-systemd/dracut-cmdline.sh
|
||||||
|
@@ -76,7 +76,7 @@ case "${root}${root_unset}" in
|
||||||
|
esac
|
||||||
|
|
||||||
|
[ -z "${root}${root_unset}" ] && die "Empty root= argument"
|
||||||
|
-[ -z "$rootok" ] && die "Don't know how to handle 'root=$root'"
|
||||||
|
+[ -z "$rootok" ] && die "X1 Don't know how to handle 'root=$root'"
|
||||||
|
|
||||||
|
export root rflags fstype netroot NEWROOT
|
||||||
|
|
||||||
|
diff --git a/modules.d/99base/init.sh b/modules.d/99base/init.sh
|
||||||
|
index e4f7cff1..3e20069f 100755
|
||||||
|
--- a/modules.d/99base/init.sh
|
||||||
|
+++ b/modules.d/99base/init.sh
|
||||||
|
@@ -136,7 +136,7 @@ getarg 'rd.break=cmdline' -d 'rdbreak=cmdline' && emergency_shell -n cmdline "Br
|
||||||
|
source_hook cmdline
|
||||||
|
|
||||||
|
[ -z "$root" ] && die "No or empty root= argument"
|
||||||
|
-[ -z "$rootok" ] && die "Don't know how to handle 'root=$root'"
|
||||||
|
+[ -z "$rootok" ] && die "X0 Don't know how to handle 'root=$root'"
|
||||||
|
|
||||||
|
export root rflags fstype netroot NEWROOT
|
||||||
|
|
||||||
|
|
24
SOURCES/0030.patch
Normal file
24
SOURCES/0030.patch
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
From 50192de38d756203a414405e2d7552e89b1c0423 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Harald Hoyer <harald@redhat.com>
|
||||||
|
Date: Tue, 4 Dec 2018 10:06:12 +0100
|
||||||
|
Subject: [PATCH] test/test-functions: correctly move server.log
|
||||||
|
|
||||||
|
(cherry picked from commit 712f471ebfae70fd71c0c740e9a3e120464ca7e7)
|
||||||
|
---
|
||||||
|
test/test-functions | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/test/test-functions b/test/test-functions
|
||||||
|
index a6254ec7..51b3df80 100644
|
||||||
|
--- a/test/test-functions
|
||||||
|
+++ b/test/test-functions
|
||||||
|
@@ -80,7 +80,7 @@ while (($# > 0)); do
|
||||||
|
ret=$?
|
||||||
|
test_cleanup
|
||||||
|
if ((ret!=0)) && [[ -f "$TESTDIR"/server.log ]]; then
|
||||||
|
- mv [[ -f "$TESTDIR"/server.log ]] ./server${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||||
|
+ mv "$TESTDIR"/server.log ./server${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||||
|
fi
|
||||||
|
rm -fr -- "$TESTDIR"
|
||||||
|
rm -f -- .testdir${TEST_RUN_ID:+-$TEST_RUN_ID}
|
||||||
|
|
43
SOURCES/0031.patch
Normal file
43
SOURCES/0031.patch
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
From bf69beb6f3824b1ebed221c8255d1f5c9efd136a Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||||
|
Date: Wed, 26 Jun 2019 16:42:04 +0200
|
||||||
|
Subject: [PATCH] test/TEST-17-LVM-THIN: fail setup if we run out of space in
|
||||||
|
the thin pool
|
||||||
|
|
||||||
|
This condition is rather difficult to detect -- the writes will just remain
|
||||||
|
queued and get lost on shutdown, resulting in a corrupt filesystem.
|
||||||
|
|
||||||
|
(cherry picked from commit 91c15babdf0215df59325f3086acfdf0ba247bfa)
|
||||||
|
---
|
||||||
|
test/TEST-17-LVM-THIN/create-root.sh | 5 +++--
|
||||||
|
test/TEST-17-LVM-THIN/test.sh | 2 +-
|
||||||
|
2 files changed, 4 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/test/TEST-17-LVM-THIN/create-root.sh b/test/TEST-17-LVM-THIN/create-root.sh
|
||||||
|
index 117d1341..0e52f879 100755
|
||||||
|
--- a/test/TEST-17-LVM-THIN/create-root.sh
|
||||||
|
+++ b/test/TEST-17-LVM-THIN/create-root.sh
|
||||||
|
@@ -27,6 +27,7 @@ cp -a -t /sysroot /source/* && \
|
||||||
|
umount /sysroot && \
|
||||||
|
sleep 1 && \
|
||||||
|
lvm lvchange -a n /dev/dracut/root && \
|
||||||
|
-sleep 1 && \
|
||||||
|
-echo "dracut-root-block-created" >/dev/sda1
|
||||||
|
+sleep 1
|
||||||
|
+dmsetup status |grep out_of_data_space || \
|
||||||
|
+ echo "dracut-root-block-created" >/dev/sda1
|
||||||
|
poweroff -f
|
||||||
|
diff --git a/test/TEST-17-LVM-THIN/test.sh b/test/TEST-17-LVM-THIN/test.sh
|
||||||
|
index af349246..1b36a216 100755
|
||||||
|
--- a/test/TEST-17-LVM-THIN/test.sh
|
||||||
|
+++ b/test/TEST-17-LVM-THIN/test.sh
|
||||||
|
@@ -56,7 +56,7 @@ test_setup() {
|
||||||
|
(
|
||||||
|
export initdir=$TESTDIR/overlay
|
||||||
|
. $basedir/dracut-init.sh
|
||||||
|
- inst_multiple sfdisk mke2fs poweroff cp umount
|
||||||
|
+ inst_multiple sfdisk mke2fs poweroff cp umount grep dmsetup
|
||||||
|
inst_hook initqueue 01 ./create-root.sh
|
||||||
|
inst_hook initqueue/finished 01 ./finished-false.sh
|
||||||
|
inst_simple ./99-idesymlinks.rules /etc/udev/rules.d/99-idesymlinks.rules
|
||||||
|
|
66
SOURCES/0032.patch
Normal file
66
SOURCES/0032.patch
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
From 0f0b8c8f90cbcd56140e85b9997deda906c71118 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||||
|
Date: Tue, 25 Jun 2019 17:39:57 +0200
|
||||||
|
Subject: [PATCH] test/TEST-14-IMSM: detect failure to compose the test setup
|
||||||
|
root
|
||||||
|
|
||||||
|
The dracut-root-block-created line should not be created if we fail to copy
|
||||||
|
in the required files to sysroot. Let's turn on -e to trap failures and
|
||||||
|
poweroff on them, like some other tests do.
|
||||||
|
|
||||||
|
Also remove the &&. Not only it is unnecessary with -e, but defeats it.
|
||||||
|
From bash(1):
|
||||||
|
|
||||||
|
The shell does not exit if the command that fails is [...] part of any
|
||||||
|
command executed in a && or || list except the command following the
|
||||||
|
final && or || [...]
|
||||||
|
|
||||||
|
(cherry picked from commit c27ed38bb2986d31b08257782ce2b24a80415c6c)
|
||||||
|
---
|
||||||
|
test/TEST-14-IMSM/create-root.sh | 23 +++++++++++++----------
|
||||||
|
1 file changed, 13 insertions(+), 10 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/test/TEST-14-IMSM/create-root.sh b/test/TEST-14-IMSM/create-root.sh
|
||||||
|
index f637ec88..a0324c6f 100755
|
||||||
|
--- a/test/TEST-14-IMSM/create-root.sh
|
||||||
|
+++ b/test/TEST-14-IMSM/create-root.sh
|
||||||
|
@@ -1,4 +1,7 @@
|
||||||
|
#!/bin/sh
|
||||||
|
+
|
||||||
|
+trap 'poweroff -f' EXIT
|
||||||
|
+
|
||||||
|
# don't let udev and this script step on eachother's toes
|
||||||
|
for x in 61-dmraid-imsm.rules 64-md-raid.rules 65-md-incremental-imsm.rules 65-md-incremental.rules 64-lvm.rules 70-mdadm.rules 99-mount-rules; do
|
||||||
|
rm -f -- "/etc/udev/rules.d/$x"
|
||||||
|
@@ -55,20 +58,20 @@ mdadm --create /dev/md0 --run --auto=yes --level=5 --raid-devices=3 \
|
||||||
|
# wait for the array to finish initailizing, otherwise this sometimes fails
|
||||||
|
# randomly.
|
||||||
|
mdadm -W /dev/md0
|
||||||
|
+set -e
|
||||||
|
lvm pvcreate -ff -y /dev/md0
|
||||||
|
-lvm vgcreate dracut /dev/md0 && \
|
||||||
|
-lvm lvcreate -l 100%FREE -n root dracut && \
|
||||||
|
-lvm vgchange -ay && \
|
||||||
|
-mke2fs -L root /dev/dracut/root && \
|
||||||
|
-mkdir -p /sysroot && \
|
||||||
|
-mount /dev/dracut/root /sysroot && \
|
||||||
|
-cp -a -t /sysroot /source/* && \
|
||||||
|
-umount /sysroot && \
|
||||||
|
-lvm lvchange -a n /dev/dracut/root && \
|
||||||
|
+lvm vgcreate dracut /dev/md0
|
||||||
|
+lvm lvcreate -l 100%FREE -n root dracut
|
||||||
|
+lvm vgchange -ay
|
||||||
|
+mke2fs -L root /dev/dracut/root
|
||||||
|
+mkdir -p /sysroot
|
||||||
|
+mount /dev/dracut/root /sysroot
|
||||||
|
+cp -a -t /sysroot /source/*
|
||||||
|
+umount /sysroot
|
||||||
|
+lvm lvchange -a n /dev/dracut/root
|
||||||
|
udevadm settle
|
||||||
|
mdadm --detail --export /dev/md0 |grep -F MD_UUID > /tmp/mduuid
|
||||||
|
. /tmp/mduuid
|
||||||
|
echo "MD_UUID=$MD_UUID"
|
||||||
|
{ echo "dracut-root-block-created"; echo MD_UUID=$MD_UUID;} > /dev/sda
|
||||||
|
mdadm --wait-clean /dev/md0
|
||||||
|
-poweroff -f
|
||||||
|
|
346
SOURCES/0033.patch
Normal file
346
SOURCES/0033.patch
Normal file
@ -0,0 +1,346 @@
|
|||||||
|
From e35e43c1c28a8935660fe72650614e5dc1defb65 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||||
|
Date: Wed, 26 Jun 2019 11:47:21 +0200
|
||||||
|
Subject: [PATCH] test: tell systemd to reboot on fatal errors
|
||||||
|
|
||||||
|
Otherwise systemd would freeze execution, causing the test to time out
|
||||||
|
instead of failing fast.
|
||||||
|
|
||||||
|
(cherry picked from commit 7934c6f918de2e82d0df5da557c5792c4fb7b798)
|
||||||
|
---
|
||||||
|
test/TEST-01-BASIC/test.sh | 2 +-
|
||||||
|
test/TEST-02-SYSTEMD/test.sh | 2 +-
|
||||||
|
test/TEST-03-USR-MOUNT/test.sh | 2 +-
|
||||||
|
test/TEST-04-FULL-SYSTEMD/test.sh | 2 +-
|
||||||
|
test/TEST-10-RAID/test.sh | 2 +-
|
||||||
|
test/TEST-11-LVM/test.sh | 2 +-
|
||||||
|
test/TEST-12-RAID-DEG/test.sh | 2 +-
|
||||||
|
test/TEST-13-ENC-RAID-LVM/test.sh | 6 +++---
|
||||||
|
test/TEST-14-IMSM/test.sh | 2 +-
|
||||||
|
test/TEST-15-BTRFSRAID/test.sh | 2 +-
|
||||||
|
test/TEST-16-DMSQUASH/test.sh | 2 +-
|
||||||
|
test/TEST-17-LVM-THIN/test.sh | 2 +-
|
||||||
|
test/TEST-20-NFS/test.sh | 4 ++--
|
||||||
|
test/TEST-30-ISCSI/test.sh | 4 ++--
|
||||||
|
test/TEST-31-ISCSI-MULTI/test.sh | 4 ++--
|
||||||
|
test/TEST-40-NBD/test.sh | 4 ++--
|
||||||
|
test/TEST-50-MULTINIC/test.sh | 4 ++--
|
||||||
|
test/TEST-70-BONDBRIDGETEAMVLAN/test.sh | 6 +++---
|
||||||
|
18 files changed, 27 insertions(+), 27 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/test/TEST-01-BASIC/test.sh b/test/TEST-01-BASIC/test.sh
|
||||||
|
index ed2ae5de..ca4a8288 100755
|
||||||
|
--- a/test/TEST-01-BASIC/test.sh
|
||||||
|
+++ b/test/TEST-01-BASIC/test.sh
|
||||||
|
@@ -15,7 +15,7 @@ test_run() {
|
||||||
|
-net none \
|
||||||
|
-watchdog i6300esb -watchdog-action poweroff \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 root=LABEL=dracut rw systemd.log_level=debug systemd.log_target=console rd.retry=3 rd.debug console=ttyS0,115200n81 rd.shell=0 $DEBUGFAIL" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot root=LABEL=dracut rw systemd.log_level=debug systemd.log_target=console rd.retry=3 rd.debug console=ttyS0,115200n81 rd.shell=0 $DEBUGFAIL" \
|
||||||
|
-initrd $TESTDIR/initramfs.testing || return 1
|
||||||
|
grep -F -m 1 -q dracut-root-block-success $TESTDIR/result || return 1
|
||||||
|
}
|
||||||
|
diff --git a/test/TEST-02-SYSTEMD/test.sh b/test/TEST-02-SYSTEMD/test.sh
|
||||||
|
index 8c5eb168..848021e5 100755
|
||||||
|
--- a/test/TEST-02-SYSTEMD/test.sh
|
||||||
|
+++ b/test/TEST-02-SYSTEMD/test.sh
|
||||||
|
@@ -11,7 +11,7 @@ test_run() {
|
||||||
|
-m 512M -smp 2 -nographic \
|
||||||
|
-net none \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 root=LABEL=dracut rw loglevel=77 systemd.log_level=debug systemd.log_target=console rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 init=/sbin/init rd.shell=0 $DEBUGFAIL" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot root=LABEL=dracut rw loglevel=77 systemd.log_level=debug systemd.log_target=console rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 init=/sbin/init rd.shell=0 $DEBUGFAIL" \
|
||||||
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
grep -F -m 1 -q dracut-root-block-success $TESTDIR/root.ext3 || return 1
|
||||||
|
}
|
||||||
|
diff --git a/test/TEST-03-USR-MOUNT/test.sh b/test/TEST-03-USR-MOUNT/test.sh
|
||||||
|
index 42c0da65..5d5ec8f8 100755
|
||||||
|
--- a/test/TEST-03-USR-MOUNT/test.sh
|
||||||
|
+++ b/test/TEST-03-USR-MOUNT/test.sh
|
||||||
|
@@ -22,7 +22,7 @@ client_run() {
|
||||||
|
-net none \
|
||||||
|
-watchdog i6300esb -watchdog-action poweroff \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 root=LABEL=dracut $client_opts quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug rd.shell=0 $DEBUGFAIL" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot root=LABEL=dracut $client_opts quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug rd.shell=0 $DEBUGFAIL" \
|
||||||
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
|
||||||
|
if (($? != 0)); then
|
||||||
|
diff --git a/test/TEST-04-FULL-SYSTEMD/test.sh b/test/TEST-04-FULL-SYSTEMD/test.sh
|
||||||
|
index 97528e4f..f65f30f2 100755
|
||||||
|
--- a/test/TEST-04-FULL-SYSTEMD/test.sh
|
||||||
|
+++ b/test/TEST-04-FULL-SYSTEMD/test.sh
|
||||||
|
@@ -23,7 +23,7 @@ client_run() {
|
||||||
|
-m 512M -smp 2 -nographic \
|
||||||
|
-net none \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 root=LABEL=dracut $client_opts rd.retry=3 console=ttyS0,115200n81 selinux=0 $DEBUGOUT rd.shell=0 $DEBUGFAIL" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot root=LABEL=dracut $client_opts rd.retry=3 console=ttyS0,115200n81 selinux=0 $DEBUGOUT rd.shell=0 $DEBUGFAIL" \
|
||||||
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
|
||||||
|
if (($? != 0)); then
|
||||||
|
diff --git a/test/TEST-10-RAID/test.sh b/test/TEST-10-RAID/test.sh
|
||||||
|
index 444126b2..0beb26c3 100755
|
||||||
|
--- a/test/TEST-10-RAID/test.sh
|
||||||
|
+++ b/test/TEST-10-RAID/test.sh
|
||||||
|
@@ -13,7 +13,7 @@ test_run() {
|
||||||
|
-m 512M -smp 2 -nographic \
|
||||||
|
-net none \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 root=/dev/dracut/root rd.auto rw rd.retry=10 console=ttyS0,115200n81 selinux=0 rd.shell=0 $DEBUGFAIL" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot root=/dev/dracut/root rd.auto rw rd.retry=10 console=ttyS0,115200n81 selinux=0 rd.shell=0 $DEBUGFAIL" \
|
||||||
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
grep -F -m 1 -q dracut-root-block-success $DISKIMAGE || return 1
|
||||||
|
}
|
||||||
|
diff --git a/test/TEST-11-LVM/test.sh b/test/TEST-11-LVM/test.sh
|
||||||
|
index 5c105e01..a907c4b1 100755
|
||||||
|
--- a/test/TEST-11-LVM/test.sh
|
||||||
|
+++ b/test/TEST-11-LVM/test.sh
|
||||||
|
@@ -12,7 +12,7 @@ test_run() {
|
||||||
|
-m 512M -smp 2 -nographic \
|
||||||
|
-net none \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 root=/dev/dracut/root rw rd.auto=1 quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug rd.shell=0 $DEBUGFAIL" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot root=/dev/dracut/root rw rd.auto=1 quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug rd.shell=0 $DEBUGFAIL" \
|
||||||
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
grep -F -m 1 -q dracut-root-block-success $TESTDIR/root.ext2 || return 1
|
||||||
|
}
|
||||||
|
diff --git a/test/TEST-12-RAID-DEG/test.sh b/test/TEST-12-RAID-DEG/test.sh
|
||||||
|
index 4e381d84..c82cde1e 100755
|
||||||
|
--- a/test/TEST-12-RAID-DEG/test.sh
|
||||||
|
+++ b/test/TEST-12-RAID-DEG/test.sh
|
||||||
|
@@ -20,7 +20,7 @@ client_run() {
|
||||||
|
-drive format=raw,index=3,media=disk,file=$TESTDIR/disk3.img.new \
|
||||||
|
-net none \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 $* systemd.log_target=kmsg loglevel=7 root=LABEL=root rw rd.retry=20 rd.info console=ttyS0,115200n81 log_buf_len=2M selinux=0 rd.debug rd.shell=0 $DEBUGFAIL " \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot $* systemd.log_target=kmsg loglevel=7 root=LABEL=root rw rd.retry=20 rd.info console=ttyS0,115200n81 log_buf_len=2M selinux=0 rd.debug rd.shell=0 $DEBUGFAIL " \
|
||||||
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
if ! grep -F -m 1 -q dracut-root-block-success $TESTDIR/root.ext2; then
|
||||||
|
echo "CLIENT TEST END: $@ [FAIL]"
|
||||||
|
diff --git a/test/TEST-13-ENC-RAID-LVM/test.sh b/test/TEST-13-ENC-RAID-LVM/test.sh
|
||||||
|
index 76ec36b3..99324ce9 100755
|
||||||
|
--- a/test/TEST-13-ENC-RAID-LVM/test.sh
|
||||||
|
+++ b/test/TEST-13-ENC-RAID-LVM/test.sh
|
||||||
|
@@ -20,7 +20,7 @@ test_run() {
|
||||||
|
-m 512M -smp 2 -nographic \
|
||||||
|
-net none \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 root=/dev/dracut/root rw rd.auto rd.retry=20 console=ttyS0,115200n81 selinux=0 rd.debug rootwait $LUKSARGS rd.shell=0 $DEBUGFAIL" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot root=/dev/dracut/root rw rd.auto rd.retry=20 console=ttyS0,115200n81 selinux=0 rd.debug rootwait $LUKSARGS rd.shell=0 $DEBUGFAIL" \
|
||||||
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
grep -F -m 1 -q dracut-root-block-success $TESTDIR/check-success.img || return 1
|
||||||
|
echo "CLIENT TEST END: [OK]"
|
||||||
|
@@ -34,7 +34,7 @@ test_run() {
|
||||||
|
-m 512M -smp 2 -nographic \
|
||||||
|
-net none \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 root=/dev/dracut/root rw quiet rd.auto rd.retry=20 rd.info console=ttyS0,115200n81 selinux=0 rd.debug $DEBUGFAIL" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot root=/dev/dracut/root rw quiet rd.auto rd.retry=20 rd.info console=ttyS0,115200n81 selinux=0 rd.debug $DEBUGFAIL" \
|
||||||
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
grep -F -m 1 -q dracut-root-block-success $TESTDIR/check-success.img || return 1
|
||||||
|
echo "CLIENT TEST END: [OK]"
|
||||||
|
@@ -48,7 +48,7 @@ test_run() {
|
||||||
|
-m 512M -smp 2 -nographic \
|
||||||
|
-net none \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 root=/dev/dracut/root rw quiet rd.auto rd.retry=10 rd.info console=ttyS0,115200n81 selinux=0 rd.debug $DEBUGFAIL rd.luks.uuid=failme" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot root=/dev/dracut/root rw quiet rd.auto rd.retry=10 rd.info console=ttyS0,115200n81 selinux=0 rd.debug $DEBUGFAIL rd.luks.uuid=failme" \
|
||||||
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
grep -F -m 1 -q dracut-root-block-success $TESTDIR/check-success.img && return 1
|
||||||
|
echo "CLIENT TEST END: [OK]"
|
||||||
|
diff --git a/test/TEST-14-IMSM/test.sh b/test/TEST-14-IMSM/test.sh
|
||||||
|
index 8ebc285a..ed60f052 100755
|
||||||
|
--- a/test/TEST-14-IMSM/test.sh
|
||||||
|
+++ b/test/TEST-14-IMSM/test.sh
|
||||||
|
@@ -16,7 +16,7 @@ client_run() {
|
||||||
|
-m 512M -smp 2 -nographic \
|
||||||
|
-net none \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 $* root=LABEL=root rw debug rd.retry=5 rd.debug console=ttyS0,115200n81 selinux=0 rd.info rd.shell=0 $DEBUGFAIL" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot $* root=LABEL=root rw debug rd.retry=5 rd.debug console=ttyS0,115200n81 selinux=0 rd.info rd.shell=0 $DEBUGFAIL" \
|
||||||
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
if ! grep -F -m 1 -q dracut-root-block-success $TESTDIR/root.ext2; then
|
||||||
|
echo "CLIENT TEST END: $@ [FAIL]"
|
||||||
|
diff --git a/test/TEST-15-BTRFSRAID/test.sh b/test/TEST-15-BTRFSRAID/test.sh
|
||||||
|
index 02cb4976..dda76672 100755
|
||||||
|
--- a/test/TEST-15-BTRFSRAID/test.sh
|
||||||
|
+++ b/test/TEST-15-BTRFSRAID/test.sh
|
||||||
|
@@ -15,7 +15,7 @@ test_run() {
|
||||||
|
-m 512M -smp 2 -nographic \
|
||||||
|
-net none \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 root=LABEL=root rw rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.shell=0 $DEBUGFAIL" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot root=LABEL=root rw rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.shell=0 $DEBUGFAIL" \
|
||||||
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
grep -F -m 1 -q dracut-root-block-success $MARKER_DISKIMAGE || return 1
|
||||||
|
}
|
||||||
|
diff --git a/test/TEST-16-DMSQUASH/test.sh b/test/TEST-16-DMSQUASH/test.sh
|
||||||
|
index 45d8c4c0..65d5bdbb 100755
|
||||||
|
--- a/test/TEST-16-DMSQUASH/test.sh
|
||||||
|
+++ b/test/TEST-16-DMSQUASH/test.sh
|
||||||
|
@@ -23,7 +23,7 @@ test_run() {
|
||||||
|
-nographic \
|
||||||
|
-net none \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 root=live:CDLABEL=LiveCD live rw quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.shell=0 $DEBUGFAIL" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot root=live:CDLABEL=LiveCD live rw quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.shell=0 $DEBUGFAIL" \
|
||||||
|
-initrd "$TESTDIR"/initramfs.testing
|
||||||
|
|
||||||
|
# mediacheck test with qemu GUI
|
||||||
|
diff --git a/test/TEST-17-LVM-THIN/test.sh b/test/TEST-17-LVM-THIN/test.sh
|
||||||
|
index 1b36a216..c13e9063 100755
|
||||||
|
--- a/test/TEST-17-LVM-THIN/test.sh
|
||||||
|
+++ b/test/TEST-17-LVM-THIN/test.sh
|
||||||
|
@@ -12,7 +12,7 @@ test_run() {
|
||||||
|
-m 512M -smp 2 -nographic \
|
||||||
|
-net none \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 root=/dev/dracut/root rw rd.auto=1 quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug rd.shell=0 $DEBUGFAIL" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot root=/dev/dracut/root rw rd.auto=1 quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug rd.shell=0 $DEBUGFAIL" \
|
||||||
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
grep -F -m 1 -q dracut-root-block-success $TESTDIR/root.ext2 || return 1
|
||||||
|
}
|
||||||
|
diff --git a/test/TEST-20-NFS/test.sh b/test/TEST-20-NFS/test.sh
|
||||||
|
index e942745a..4ad7fd77 100755
|
||||||
|
--- a/test/TEST-20-NFS/test.sh
|
||||||
|
+++ b/test/TEST-20-NFS/test.sh
|
||||||
|
@@ -22,7 +22,7 @@ run_server() {
|
||||||
|
${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
||||||
|
-watchdog i6300esb -watchdog-action poweroff \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 rd.debug loglevel=77 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot rd.debug loglevel=77 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0" \
|
||||||
|
-initrd $TESTDIR/initramfs.server \
|
||||||
|
-pidfile $TESTDIR/server.pid -daemonize || return 1
|
||||||
|
sudo chmod 644 $TESTDIR/server.pid || return 1
|
||||||
|
@@ -57,7 +57,7 @@ client_test() {
|
||||||
|
-net socket,connect=127.0.0.1:12320 \
|
||||||
|
-watchdog i6300esb -watchdog-action poweroff \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 rd.shell=0 $cmdline $DEBUGFAIL rd.debug rd.retry=10 rd.info quiet ro console=ttyS0,115200n81 selinux=0" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot rd.shell=0 $cmdline $DEBUGFAIL rd.debug rd.retry=10 rd.info quiet ro console=ttyS0,115200n81 selinux=0" \
|
||||||
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
|
||||||
|
if [[ $? -ne 0 ]] || ! grep -F -m 1 -q nfs-OK $TESTDIR/client.img; then
|
||||||
|
diff --git a/test/TEST-30-ISCSI/test.sh b/test/TEST-30-ISCSI/test.sh
|
||||||
|
index f6cc56d5..d5a6ba58 100755
|
||||||
|
--- a/test/TEST-30-ISCSI/test.sh
|
||||||
|
+++ b/test/TEST-30-ISCSI/test.sh
|
||||||
|
@@ -26,7 +26,7 @@ run_server() {
|
||||||
|
-net nic,macaddr=52:54:00:12:34:57,model=e1000 \
|
||||||
|
-net socket,listen=127.0.0.1:12330 \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
|
||||||
|
-initrd $TESTDIR/initramfs.server \
|
||||||
|
-pidfile $TESTDIR/server.pid -daemonize || return 1
|
||||||
|
sudo chmod 644 $TESTDIR/server.pid || return 1
|
||||||
|
@@ -51,7 +51,7 @@ run_client() {
|
||||||
|
-net nic,macaddr=52:54:00:12:34:01,model=e1000 \
|
||||||
|
-net socket,connect=127.0.0.1:12330 \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 rw rd.auto rd.retry=50 console=ttyS0,115200n81 selinux=0 rd.debug=0 rd.shell=0 $DEBUGFAIL $*" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot rw rd.auto rd.retry=50 console=ttyS0,115200n81 selinux=0 rd.debug=0 rd.shell=0 $DEBUGFAIL $*" \
|
||||||
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
if ! grep -F -m 1 -q iscsi-OK $TESTDIR/client.img; then
|
||||||
|
echo "CLIENT TEST END: $test_name [FAILED - BAD EXIT]"
|
||||||
|
diff --git a/test/TEST-31-ISCSI-MULTI/test.sh b/test/TEST-31-ISCSI-MULTI/test.sh
|
||||||
|
index 5c38249c..20db2451 100755
|
||||||
|
--- a/test/TEST-31-ISCSI-MULTI/test.sh
|
||||||
|
+++ b/test/TEST-31-ISCSI-MULTI/test.sh
|
||||||
|
@@ -26,7 +26,7 @@ run_server() {
|
||||||
|
-net nic,macaddr=52:54:00:12:34:57,model=e1000 \
|
||||||
|
-net socket,listen=127.0.0.1:12331 \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
|
||||||
|
-initrd $TESTDIR/initramfs.server \
|
||||||
|
-pidfile $TESTDIR/server.pid -daemonize || return 1
|
||||||
|
sudo chmod 644 $TESTDIR/server.pid || return 1
|
||||||
|
@@ -51,7 +51,7 @@ run_client() {
|
||||||
|
-net nic,macaddr=52:54:00:12:34:01,model=e1000 \
|
||||||
|
-net socket,connect=127.0.0.1:12331 \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 rw rd.auto rd.retry=50 console=ttyS0,115200n81 selinux=0 rd.debug=0 rd.shell=0 $DEBUGFAIL $*" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot rw rd.auto rd.retry=50 console=ttyS0,115200n81 selinux=0 rd.debug=0 rd.shell=0 $DEBUGFAIL $*" \
|
||||||
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
if ! grep -F -m 1 -q iscsi-OK $TESTDIR/client.img; then
|
||||||
|
echo "CLIENT TEST END: $test_name [FAILED - BAD EXIT]"
|
||||||
|
diff --git a/test/TEST-40-NBD/test.sh b/test/TEST-40-NBD/test.sh
|
||||||
|
index 12736a15..19ec5b0e 100755
|
||||||
|
--- a/test/TEST-40-NBD/test.sh
|
||||||
|
+++ b/test/TEST-40-NBD/test.sh
|
||||||
|
@@ -28,7 +28,7 @@ run_server() {
|
||||||
|
${SERIAL:+-serial "$SERIAL"} \
|
||||||
|
${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 root=/dev/sda rootfstype=ext2 rw quiet console=ttyS0,115200n81 selinux=0" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot root=/dev/sda rootfstype=ext2 rw quiet console=ttyS0,115200n81 selinux=0" \
|
||||||
|
-initrd $TESTDIR/initramfs.server -pidfile $TESTDIR/server.pid -daemonize || return 1
|
||||||
|
sudo chmod 644 $TESTDIR/server.pid || return 1
|
||||||
|
|
||||||
|
@@ -65,7 +65,7 @@ client_test() {
|
||||||
|
-net nic,macaddr=$mac,model=e1000 \
|
||||||
|
-net socket,connect=127.0.0.1:12340 \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 rd.shell=0 $cmdline $DEBUGFAIL rd.auto rd.info rd.retry=10 ro console=ttyS0,115200n81 selinux=0 " \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot rd.shell=0 $cmdline $DEBUGFAIL rd.auto rd.info rd.retry=10 ro console=ttyS0,115200n81 selinux=0 " \
|
||||||
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
|
||||||
|
if [[ $? -ne 0 ]] || ! grep -F -m 1 -q nbd-OK $TESTDIR/flag.img; then
|
||||||
|
diff --git a/test/TEST-50-MULTINIC/test.sh b/test/TEST-50-MULTINIC/test.sh
|
||||||
|
index 495a66f2..ff2961dc 100755
|
||||||
|
--- a/test/TEST-50-MULTINIC/test.sh
|
||||||
|
+++ b/test/TEST-50-MULTINIC/test.sh
|
||||||
|
@@ -23,7 +23,7 @@ run_server() {
|
||||||
|
${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
||||||
|
-watchdog i6300esb -watchdog-action poweroff \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 loglevel=7 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot loglevel=7 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0" \
|
||||||
|
-initrd "$TESTDIR"/initramfs.server \
|
||||||
|
-pidfile "$TESTDIR"/server.pid -daemonize || return 1
|
||||||
|
|
||||||
|
@@ -63,7 +63,7 @@ client_test() {
|
||||||
|
-device e1000,netdev=n2,mac=52:54:00:12:34:99 \
|
||||||
|
-watchdog i6300esb -watchdog-action poweroff \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 rd.shell=0 $cmdline $DEBUGFAIL rd.retry=5 ro console=ttyS0,115200n81 selinux=0 init=/sbin/init rd.debug systemd.log_target=console loglevel=7" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot rd.shell=0 $cmdline $DEBUGFAIL rd.retry=5 ro console=ttyS0,115200n81 selinux=0 init=/sbin/init rd.debug systemd.log_target=console loglevel=7" \
|
||||||
|
-initrd "$TESTDIR"/initramfs.testing
|
||||||
|
|
||||||
|
{ read OK; read IFACES; } < "$TESTDIR"/client.img
|
||||||
|
diff --git a/test/TEST-70-BONDBRIDGETEAMVLAN/test.sh b/test/TEST-70-BONDBRIDGETEAMVLAN/test.sh
|
||||||
|
index 8c11a7d3..5618baee 100755
|
||||||
|
--- a/test/TEST-70-BONDBRIDGETEAMVLAN/test.sh
|
||||||
|
+++ b/test/TEST-70-BONDBRIDGETEAMVLAN/test.sh
|
||||||
|
@@ -31,7 +31,7 @@ run_server() {
|
||||||
|
${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
||||||
|
-watchdog i6300esb -watchdog-action poweroff \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 loglevel=7 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 rd.debug" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot loglevel=7 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 rd.debug" \
|
||||||
|
-initrd "$TESTDIR"/initramfs.server \
|
||||||
|
-pidfile "$TESTDIR"/server.pid -daemonize || return 1
|
||||||
|
chmod 644 -- "$TESTDIR"/server.pid || return 1
|
||||||
|
@@ -79,7 +79,7 @@ client_test() {
|
||||||
|
$nic3 -device e1000,mac=52:54:00:12:34:05,netdev=n3 \
|
||||||
|
-watchdog i6300esb -watchdog-action poweroff \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 $cmdline rd.debug $DEBUGFAIL rd.retry=5 rw console=ttyS0,115200n81 selinux=0 init=/sbin/init" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot $cmdline rd.debug $DEBUGFAIL rd.retry=5 rw console=ttyS0,115200n81 selinux=0 init=/sbin/init" \
|
||||||
|
-initrd "$TESTDIR"/initramfs.testing
|
||||||
|
else
|
||||||
|
$testdir/run-qemu \
|
||||||
|
@@ -95,7 +95,7 @@ client_test() {
|
||||||
|
-net nic,vlan=3,macaddr=52:54:00:12:34:05,model=e1000 \
|
||||||
|
-watchdog i6300esb -watchdog-action poweroff \
|
||||||
|
-no-reboot \
|
||||||
|
- -append "panic=1 $cmdline rd.debug $DEBUGFAIL rd.retry=5 rw console=ttyS0,115200n81 selinux=0 init=/sbin/init" \
|
||||||
|
+ -append "panic=1 systemd.crash_reboot $cmdline rd.debug $DEBUGFAIL rd.retry=5 rw console=ttyS0,115200n81 selinux=0 init=/sbin/init" \
|
||||||
|
-initrd "$TESTDIR"/initramfs.testing
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
229
SOURCES/0034.patch
Normal file
229
SOURCES/0034.patch
Normal file
@ -0,0 +1,229 @@
|
|||||||
|
From a34b1baa6ca45b420399ec4cefe3cfe225c14dcf Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||||
|
Date: Tue, 11 Jun 2019 09:56:13 +0200
|
||||||
|
Subject: [PATCH] test/{10,12,13,14,17,30,31}: increase the disk sizes
|
||||||
|
|
||||||
|
On Fedora 30 the paritition sizes turn out to be too small again:
|
||||||
|
|
||||||
|
+ mkdir -p /sysroot
|
||||||
|
+ mount /dev/dracut/root /sysroot
|
||||||
|
+ cp -a -t /sysroot /source/bin /source/dev /source/etc /source/lib /source/lib64 /source/proc /source/root /source/sbin /source/sys /source/tmp /source/usr /source/var
|
||||||
|
cp: error writing '/sysroot/usr/lib64/libkrb5.so.3.3': No space left on device
|
||||||
|
cp: error writing '/sysroot/usr/lib64/libkrb5support.so.0.1': No space left on device
|
||||||
|
|
||||||
|
It turns out that there has been quite some size increase in some libraries,
|
||||||
|
notably glibc, though not all -- some even shrunk, ruling out a toolchain
|
||||||
|
problem. Here's are files over 1M we install on Fedora 30:
|
||||||
|
|
||||||
|
f29 f30
|
||||||
|
2.7M => 6.4M /usr/lib64/{libc-2.28.so => libc-2.29.so}
|
||||||
|
3.1M => 6.0M /usr/lib64/libcrypto.so.1.1.1c
|
||||||
|
2.0M => 3.5M /usr/lib64/{libm-2.28.so => libm-2.29.so}
|
||||||
|
2.9M => 2.8M /usr/lib/systemd/{libsystemd-shared-239.so => libsystemd-shared-241.so}
|
||||||
|
1.7M => 2.5M /usr/lib64/libunistring.so.2.1.0
|
||||||
|
2.3M => 2.4M /usr/lib64/bind9-export/libdns-export.so.1105.0.0
|
||||||
|
1.2M => 2.1M /usr/bin/bash
|
||||||
|
1.1M => 1.4M /usr/lib64/libkrb5.so.3.3
|
||||||
|
1.2M => 1.4M /usr/lib64/libgcrypt.so.20.2.4
|
||||||
|
612K => 1.1M /usr/lib64/libssl.so.1.1.1c
|
||||||
|
|
||||||
|
This increases the image sizes to accomodate for this. There's probably
|
||||||
|
little else we can do.
|
||||||
|
|
||||||
|
(cherry picked from commit e318ba30fbd84d510a5bbb071d868e523d965869)
|
||||||
|
---
|
||||||
|
test/TEST-10-RAID/create-root.sh | 6 +++---
|
||||||
|
test/TEST-10-RAID/test.sh | 2 +-
|
||||||
|
test/TEST-12-RAID-DEG/test.sh | 6 +++---
|
||||||
|
test/TEST-13-ENC-RAID-LVM/create-root.sh | 6 +++---
|
||||||
|
test/TEST-13-ENC-RAID-LVM/test.sh | 2 +-
|
||||||
|
test/TEST-14-IMSM/create-root.sh | 6 +++---
|
||||||
|
test/TEST-14-IMSM/test.sh | 4 ++--
|
||||||
|
test/TEST-17-LVM-THIN/create-root.sh | 8 ++++----
|
||||||
|
test/TEST-17-LVM-THIN/test.sh | 2 +-
|
||||||
|
test/TEST-30-ISCSI/test.sh | 6 +++---
|
||||||
|
test/TEST-31-ISCSI-MULTI/test.sh | 6 +++---
|
||||||
|
11 files changed, 27 insertions(+), 27 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/test/TEST-10-RAID/create-root.sh b/test/TEST-10-RAID/create-root.sh
|
||||||
|
index 7b5f2a76..af4cac0d 100755
|
||||||
|
--- a/test/TEST-10-RAID/create-root.sh
|
||||||
|
+++ b/test/TEST-10-RAID/create-root.sh
|
||||||
|
@@ -8,9 +8,9 @@ udevadm control --reload
|
||||||
|
# save a partition at the beginning for future flagging purposes
|
||||||
|
sfdisk /dev/sda <<EOF
|
||||||
|
,4M
|
||||||
|
-,25M
|
||||||
|
-,25M
|
||||||
|
-,25M
|
||||||
|
+,41M
|
||||||
|
+,41M
|
||||||
|
+,41M
|
||||||
|
EOF
|
||||||
|
udevadm settle
|
||||||
|
mdadm --create /dev/md0 --run --auto=yes --level=5 --raid-devices=3 /dev/sda2 /dev/sda3 /dev/sda4
|
||||||
|
diff --git a/test/TEST-10-RAID/test.sh b/test/TEST-10-RAID/test.sh
|
||||||
|
index 0beb26c3..07179a29 100755
|
||||||
|
--- a/test/TEST-10-RAID/test.sh
|
||||||
|
+++ b/test/TEST-10-RAID/test.sh
|
||||||
|
@@ -22,7 +22,7 @@ test_setup() {
|
||||||
|
DISKIMAGE=$TESTDIR/TEST-10-RAID-root.img
|
||||||
|
# Create the blank file to use as a root filesystem
|
||||||
|
rm -f -- $DISKIMAGE
|
||||||
|
- dd if=/dev/null of=$DISKIMAGE bs=1M seek=80
|
||||||
|
+ dd if=/dev/null of=$DISKIMAGE bs=1M seek=128
|
||||||
|
|
||||||
|
kernel=$KVERSION
|
||||||
|
# Create what will eventually be our root filesystem onto an overlay
|
||||||
|
diff --git a/test/TEST-12-RAID-DEG/test.sh b/test/TEST-12-RAID-DEG/test.sh
|
||||||
|
index c82cde1e..920baafd 100755
|
||||||
|
--- a/test/TEST-12-RAID-DEG/test.sh
|
||||||
|
+++ b/test/TEST-12-RAID-DEG/test.sh
|
||||||
|
@@ -59,9 +59,9 @@ test_setup() {
|
||||||
|
# Create the blank file to use as a root filesystem
|
||||||
|
rm -f -- $TESTDIR/root.ext2
|
||||||
|
dd if=/dev/null of=$TESTDIR/root.ext2 bs=1M seek=40
|
||||||
|
- dd if=/dev/null of=$TESTDIR/disk1.img bs=1M seek=20
|
||||||
|
- dd if=/dev/null of=$TESTDIR/disk2.img bs=1M seek=20
|
||||||
|
- dd if=/dev/null of=$TESTDIR/disk3.img bs=1M seek=20
|
||||||
|
+ dd if=/dev/null of=$TESTDIR/disk1.img bs=1M seek=35
|
||||||
|
+ dd if=/dev/null of=$TESTDIR/disk2.img bs=1M seek=35
|
||||||
|
+ dd if=/dev/null of=$TESTDIR/disk3.img bs=1M seek=35
|
||||||
|
|
||||||
|
kernel=$KVERSION
|
||||||
|
# Create what will eventually be our root filesystem onto an overlay
|
||||||
|
diff --git a/test/TEST-13-ENC-RAID-LVM/create-root.sh b/test/TEST-13-ENC-RAID-LVM/create-root.sh
|
||||||
|
index 72bc765f..13e65838 100755
|
||||||
|
--- a/test/TEST-13-ENC-RAID-LVM/create-root.sh
|
||||||
|
+++ b/test/TEST-13-ENC-RAID-LVM/create-root.sh
|
||||||
|
@@ -9,9 +9,9 @@ udevadm control --reload
|
||||||
|
# save a partition at the beginning for future flagging purposes
|
||||||
|
sfdisk /dev/sda <<EOF
|
||||||
|
,4M
|
||||||
|
-,25M
|
||||||
|
-,25M
|
||||||
|
-,25M
|
||||||
|
+,43M
|
||||||
|
+,43M
|
||||||
|
+,43M
|
||||||
|
EOF
|
||||||
|
udevadm settle
|
||||||
|
printf test >keyfile
|
||||||
|
diff --git a/test/TEST-13-ENC-RAID-LVM/test.sh b/test/TEST-13-ENC-RAID-LVM/test.sh
|
||||||
|
index 99324ce9..9ffe24b1 100755
|
||||||
|
--- a/test/TEST-13-ENC-RAID-LVM/test.sh
|
||||||
|
+++ b/test/TEST-13-ENC-RAID-LVM/test.sh
|
||||||
|
@@ -59,7 +59,7 @@ test_run() {
|
||||||
|
test_setup() {
|
||||||
|
# Create the blank file to use as a root filesystem
|
||||||
|
rm -f -- $TESTDIR/root.ext2
|
||||||
|
- dd if=/dev/null of=$TESTDIR/root.ext2 bs=1M seek=80
|
||||||
|
+ dd if=/dev/null of=$TESTDIR/root.ext2 bs=1M seek=134
|
||||||
|
|
||||||
|
kernel=$KVERSION
|
||||||
|
# Create what will eventually be our root filesystem onto an overlay
|
||||||
|
diff --git a/test/TEST-14-IMSM/create-root.sh b/test/TEST-14-IMSM/create-root.sh
|
||||||
|
index a0324c6f..0d10945b 100755
|
||||||
|
--- a/test/TEST-14-IMSM/create-root.sh
|
||||||
|
+++ b/test/TEST-14-IMSM/create-root.sh
|
||||||
|
@@ -32,9 +32,9 @@ sfdisk -g /dev/mapper/isw*Test0
|
||||||
|
# save a partition at the beginning for future flagging purposes
|
||||||
|
sfdisk --no-reread /dev/mapper/isw*Test0 <<EOF
|
||||||
|
,4M
|
||||||
|
-,20M
|
||||||
|
-,20M
|
||||||
|
-,20M
|
||||||
|
+,28M
|
||||||
|
+,28M
|
||||||
|
+,28M
|
||||||
|
EOF
|
||||||
|
|
||||||
|
udevadm settle
|
||||||
|
diff --git a/test/TEST-14-IMSM/test.sh b/test/TEST-14-IMSM/test.sh
|
||||||
|
index ed60f052..a3e52b53 100755
|
||||||
|
--- a/test/TEST-14-IMSM/test.sh
|
||||||
|
+++ b/test/TEST-14-IMSM/test.sh
|
||||||
|
@@ -53,8 +53,8 @@ test_setup() {
|
||||||
|
rm -f -- $TESTDIR/disk1
|
||||||
|
rm -f -- $TESTDIR/disk2
|
||||||
|
dd if=/dev/null of=$TESTDIR/root.ext2 bs=1M seek=1
|
||||||
|
- dd if=/dev/null of=$TESTDIR/disk1 bs=1M seek=80
|
||||||
|
- dd if=/dev/null of=$TESTDIR/disk2 bs=1M seek=80
|
||||||
|
+ dd if=/dev/null of=$TESTDIR/disk1 bs=1M seek=104
|
||||||
|
+ dd if=/dev/null of=$TESTDIR/disk2 bs=1M seek=104
|
||||||
|
|
||||||
|
kernel=$KVERSION
|
||||||
|
# Create what will eventually be our root filesystem onto an overlay
|
||||||
|
diff --git a/test/TEST-17-LVM-THIN/create-root.sh b/test/TEST-17-LVM-THIN/create-root.sh
|
||||||
|
index 0e52f879..6e09012e 100755
|
||||||
|
--- a/test/TEST-17-LVM-THIN/create-root.sh
|
||||||
|
+++ b/test/TEST-17-LVM-THIN/create-root.sh
|
||||||
|
@@ -8,16 +8,16 @@ udevadm control --reload
|
||||||
|
# save a partition at the beginning for future flagging purposes
|
||||||
|
sfdisk /dev/sda <<EOF
|
||||||
|
,4M
|
||||||
|
-,25M
|
||||||
|
-,25M
|
||||||
|
-,25M
|
||||||
|
+,29M
|
||||||
|
+,29M
|
||||||
|
+,29M
|
||||||
|
EOF
|
||||||
|
udevadm settle
|
||||||
|
for i in sda2 sda3 sda4; do
|
||||||
|
lvm pvcreate -ff -y /dev/$i ;
|
||||||
|
done && \
|
||||||
|
lvm vgcreate dracut /dev/sda[234] && \
|
||||||
|
-lvm lvcreate -l 16 -T dracut/mythinpool && \
|
||||||
|
+lvm lvcreate -l 17 -T dracut/mythinpool && \
|
||||||
|
lvm lvcreate -V1G -T dracut/mythinpool -n root && \
|
||||||
|
lvm vgchange -ay && \
|
||||||
|
mke2fs /dev/dracut/root && \
|
||||||
|
diff --git a/test/TEST-17-LVM-THIN/test.sh b/test/TEST-17-LVM-THIN/test.sh
|
||||||
|
index c13e9063..c7247c91 100755
|
||||||
|
--- a/test/TEST-17-LVM-THIN/test.sh
|
||||||
|
+++ b/test/TEST-17-LVM-THIN/test.sh
|
||||||
|
@@ -19,7 +19,7 @@ test_run() {
|
||||||
|
|
||||||
|
test_setup() {
|
||||||
|
# Create the blank file to use as a root filesystem
|
||||||
|
- dd if=/dev/null of=$TESTDIR/root.ext2 bs=1M seek=80
|
||||||
|
+ dd if=/dev/null of=$TESTDIR/root.ext2 bs=1M seek=92
|
||||||
|
|
||||||
|
kernel=$KVERSION
|
||||||
|
# Create what will eventually be our root filesystem onto an overlay
|
||||||
|
diff --git a/test/TEST-30-ISCSI/test.sh b/test/TEST-30-ISCSI/test.sh
|
||||||
|
index d5a6ba58..c126e3dd 100755
|
||||||
|
--- a/test/TEST-30-ISCSI/test.sh
|
||||||
|
+++ b/test/TEST-30-ISCSI/test.sh
|
||||||
|
@@ -109,9 +109,9 @@ test_setup() {
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Create the blank file to use as a root filesystem
|
||||||
|
- dd if=/dev/null of=$TESTDIR/root.ext3 bs=1M seek=40
|
||||||
|
- dd if=/dev/null of=$TESTDIR/iscsidisk2.img bs=1M seek=40
|
||||||
|
- dd if=/dev/null of=$TESTDIR/iscsidisk3.img bs=1M seek=40
|
||||||
|
+ dd if=/dev/null of=$TESTDIR/root.ext3 bs=1M seek=45
|
||||||
|
+ dd if=/dev/null of=$TESTDIR/iscsidisk2.img bs=1M seek=45
|
||||||
|
+ dd if=/dev/null of=$TESTDIR/iscsidisk3.img bs=1M seek=45
|
||||||
|
|
||||||
|
kernel=$KVERSION
|
||||||
|
# Create what will eventually be our root filesystem onto an overlay
|
||||||
|
diff --git a/test/TEST-31-ISCSI-MULTI/test.sh b/test/TEST-31-ISCSI-MULTI/test.sh
|
||||||
|
index 20db2451..122c69e3 100755
|
||||||
|
--- a/test/TEST-31-ISCSI-MULTI/test.sh
|
||||||
|
+++ b/test/TEST-31-ISCSI-MULTI/test.sh
|
||||||
|
@@ -131,9 +131,9 @@ test_setup() {
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Create the blank file to use as a root filesystem
|
||||||
|
- dd if=/dev/null of=$TESTDIR/root.ext3 bs=1M seek=40
|
||||||
|
- dd if=/dev/null of=$TESTDIR/iscsidisk2.img bs=1M seek=40
|
||||||
|
- dd if=/dev/null of=$TESTDIR/iscsidisk3.img bs=1M seek=40
|
||||||
|
+ dd if=/dev/null of=$TESTDIR/root.ext3 bs=1M seek=45
|
||||||
|
+ dd if=/dev/null of=$TESTDIR/iscsidisk2.img bs=1M seek=45
|
||||||
|
+ dd if=/dev/null of=$TESTDIR/iscsidisk3.img bs=1M seek=45
|
||||||
|
|
||||||
|
kernel=$KVERSION
|
||||||
|
# Create what will eventually be our root filesystem onto an overlay
|
||||||
|
|
27
SOURCES/0035.patch
Normal file
27
SOURCES/0035.patch
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
From d9bf0c38be49199724abe1d18bc1c2686e6f0c88 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||||
|
Date: Thu, 27 Jun 2019 16:20:32 +0200
|
||||||
|
Subject: [PATCH] travis: run TEST-14-IMSM on Fedora 29
|
||||||
|
|
||||||
|
Systemd in Fedora 30 is broken at the moment.
|
||||||
|
Fix: https://github.com/systemd/systemd/pull/12872/
|
||||||
|
|
||||||
|
(cherry picked from commit 7a2503ab8cec9473ad6dacf4f48b17344219f3c0)
|
||||||
|
---
|
||||||
|
.travis.yml | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/.travis.yml b/.travis.yml
|
||||||
|
index efb0df1b..de0af438 100644
|
||||||
|
--- a/.travis.yml
|
||||||
|
+++ b/.travis.yml
|
||||||
|
@@ -19,7 +19,7 @@ env:
|
||||||
|
- IMAGE=latest TESTS=10
|
||||||
|
- IMAGE=latest TESTS=11
|
||||||
|
- IMAGE=latest TESTS=13
|
||||||
|
- - IMAGE=latest TESTS=14
|
||||||
|
+ - IMAGE=29 TESTS=14
|
||||||
|
- IMAGE=latest TESTS=15
|
||||||
|
- IMAGE=latest TESTS=17
|
||||||
|
|
||||||
|
|
27
SOURCES/0036.patch
Normal file
27
SOURCES/0036.patch
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
From c60f4fc027272c221a887128070ac89547b6ecc3 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||||
|
Date: Thu, 27 Jun 2019 16:22:04 +0200
|
||||||
|
Subject: [PATCH] travis: run TEST-13-ENC-RAID-LVM on Fedora 29
|
||||||
|
|
||||||
|
Systemd in Fedora 30 is broken at the moment.
|
||||||
|
Fix: https://github.com/systemd/systemd/pull/12897
|
||||||
|
|
||||||
|
(cherry picked from commit 8238f41b34777c3c75b03a9b598d4b9e1c7bf911)
|
||||||
|
---
|
||||||
|
.travis.yml | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/.travis.yml b/.travis.yml
|
||||||
|
index de0af438..364078cf 100644
|
||||||
|
--- a/.travis.yml
|
||||||
|
+++ b/.travis.yml
|
||||||
|
@@ -18,7 +18,7 @@ env:
|
||||||
|
- IMAGE=latest TESTS=04
|
||||||
|
- IMAGE=latest TESTS=10
|
||||||
|
- IMAGE=latest TESTS=11
|
||||||
|
- - IMAGE=latest TESTS=13
|
||||||
|
+ - IMAGE=29 TESTS=13
|
||||||
|
- IMAGE=29 TESTS=14
|
||||||
|
- IMAGE=latest TESTS=15
|
||||||
|
- IMAGE=latest TESTS=17
|
||||||
|
|
53
SOURCES/0037.patch
Normal file
53
SOURCES/0037.patch
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
From d8f0e52ac7d05c364ca24d2058c970e5e03f82ff Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||||
|
Date: Fri, 30 Aug 2019 16:16:51 +0200
|
||||||
|
Subject: [PATCH] all: remove debugging leftovers
|
||||||
|
|
||||||
|
Accidentally folded into commit e671c3a06a7e5 ('95iscsi/module-setup.sh:
|
||||||
|
do not require 'hostname' anymore').
|
||||||
|
---
|
||||||
|
modules.d/40network/netroot.sh | 2 +-
|
||||||
|
modules.d/98dracut-systemd/dracut-cmdline.sh | 2 +-
|
||||||
|
modules.d/99base/init.sh | 2 +-
|
||||||
|
3 files changed, 3 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/40network/netroot.sh b/modules.d/40network/netroot.sh
|
||||||
|
index 654cfc72..207364cd 100755
|
||||||
|
--- a/modules.d/40network/netroot.sh
|
||||||
|
+++ b/modules.d/40network/netroot.sh
|
||||||
|
@@ -66,7 +66,7 @@ if [ -z "$2" ]; then
|
||||||
|
|
||||||
|
# Check: do we really know how to handle (net)root?
|
||||||
|
[ -z "$root" ] && die "No or empty root= argument"
|
||||||
|
- [ -z "$rootok" ] && die "X2 Don't know how to handle 'root=$root'"
|
||||||
|
+ [ -z "$rootok" ] && die "Don't know how to handle 'root=$root'"
|
||||||
|
|
||||||
|
handler=${netroot%%:*}
|
||||||
|
handler=${handler%%4}
|
||||||
|
diff --git a/modules.d/98dracut-systemd/dracut-cmdline.sh b/modules.d/98dracut-systemd/dracut-cmdline.sh
|
||||||
|
index 89c52d13..bff9435a 100755
|
||||||
|
--- a/modules.d/98dracut-systemd/dracut-cmdline.sh
|
||||||
|
+++ b/modules.d/98dracut-systemd/dracut-cmdline.sh
|
||||||
|
@@ -76,7 +76,7 @@ case "${root}${root_unset}" in
|
||||||
|
esac
|
||||||
|
|
||||||
|
[ -z "${root}${root_unset}" ] && die "Empty root= argument"
|
||||||
|
-[ -z "$rootok" ] && die "X1 Don't know how to handle 'root=$root'"
|
||||||
|
+[ -z "$rootok" ] && die "Don't know how to handle 'root=$root'"
|
||||||
|
|
||||||
|
export root rflags fstype netroot NEWROOT
|
||||||
|
|
||||||
|
diff --git a/modules.d/99base/init.sh b/modules.d/99base/init.sh
|
||||||
|
index 3e20069f..e4f7cff1 100755
|
||||||
|
--- a/modules.d/99base/init.sh
|
||||||
|
+++ b/modules.d/99base/init.sh
|
||||||
|
@@ -136,7 +136,7 @@ getarg 'rd.break=cmdline' -d 'rdbreak=cmdline' && emergency_shell -n cmdline "Br
|
||||||
|
source_hook cmdline
|
||||||
|
|
||||||
|
[ -z "$root" ] && die "No or empty root= argument"
|
||||||
|
-[ -z "$rootok" ] && die "X0 Don't know how to handle 'root=$root'"
|
||||||
|
+[ -z "$rootok" ] && die "Don't know how to handle 'root=$root'"
|
||||||
|
|
||||||
|
export root rflags fstype netroot NEWROOT
|
||||||
|
|
||||||
|
|
31
SOURCES/0038.patch
Normal file
31
SOURCES/0038.patch
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
From 8eb08e55286e77f005246d1db1bfd2adf4a0e40b Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||||
|
Date: Tue, 27 Nov 2018 15:30:48 +0100
|
||||||
|
Subject: [PATCH] network-manager: call the online hook for connected devices
|
||||||
|
|
||||||
|
Look for "connection-uuid" instead of "managed" to determine the devices
|
||||||
|
that are actually activated with a connection and call the online hook.
|
||||||
|
|
||||||
|
This fixes the anaconda-net root mount, which utilizes the online hook.
|
||||||
|
|
||||||
|
(cherry picked from commit 79a17b0112995eb60c85c64d15070c52f213b28d)
|
||||||
|
---
|
||||||
|
modules.d/35network-manager/nm-run.sh | 3 ++-
|
||||||
|
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/35network-manager/nm-run.sh b/modules.d/35network-manager/nm-run.sh
|
||||||
|
index f6defa99..0f943631 100755
|
||||||
|
--- a/modules.d/35network-manager/nm-run.sh
|
||||||
|
+++ b/modules.d/35network-manager/nm-run.sh
|
||||||
|
@@ -9,8 +9,9 @@ fi
|
||||||
|
for _i in /sys/class/net/*/
|
||||||
|
do
|
||||||
|
state=/run/NetworkManager/devices/$(cat $_i/ifindex)
|
||||||
|
- grep -q managed=true $state 2>/dev/null || continue
|
||||||
|
+ grep -q connection-uuid= $state 2>/dev/null || continue
|
||||||
|
ifname=$(basename $_i)
|
||||||
|
sed -n 's/root-path/new_root_path/p' <$state >/tmp/dhclient.$ifname.dhcpopts
|
||||||
|
+ source_hook initqueue/online $ifname
|
||||||
|
/sbin/netroot $ifname
|
||||||
|
done
|
||||||
|
|
24
SOURCES/0039.patch
Normal file
24
SOURCES/0039.patch
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
From 34011ee53e745f74d70bc5b52dade6d4ef349e90 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||||
|
Date: Mon, 17 Jun 2019 10:07:38 +0200
|
||||||
|
Subject: [PATCH] network-manager: remove useless use of basename
|
||||||
|
|
||||||
|
(cherry picked from commit 5e0f8c8a4ced36268d0077acafa1db2402776fa6)
|
||||||
|
---
|
||||||
|
modules.d/35network-manager/nm-run.sh | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/35network-manager/nm-run.sh b/modules.d/35network-manager/nm-run.sh
|
||||||
|
index 0f943631..5f4b38ca 100755
|
||||||
|
--- a/modules.d/35network-manager/nm-run.sh
|
||||||
|
+++ b/modules.d/35network-manager/nm-run.sh
|
||||||
|
@@ -10,7 +10,7 @@ for _i in /sys/class/net/*/
|
||||||
|
do
|
||||||
|
state=/run/NetworkManager/devices/$(cat $_i/ifindex)
|
||||||
|
grep -q connection-uuid= $state 2>/dev/null || continue
|
||||||
|
- ifname=$(basename $_i)
|
||||||
|
+ ifname=${_i##*/}
|
||||||
|
sed -n 's/root-path/new_root_path/p' <$state >/tmp/dhclient.$ifname.dhcpopts
|
||||||
|
source_hook initqueue/online $ifname
|
||||||
|
/sbin/netroot $ifname
|
||||||
|
|
24
SOURCES/0040.patch
Normal file
24
SOURCES/0040.patch
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
From 94c75a2a827ff09ffac18454d5c4ba4756d721d6 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||||
|
Date: Mon, 27 May 2019 12:44:17 +0200
|
||||||
|
Subject: [PATCH] network-manager: also read out next-server from NM state
|
||||||
|
|
||||||
|
(cherry picked from commit 4be95b67a73e7434f92a7d7c40955eae0b59717e)
|
||||||
|
---
|
||||||
|
modules.d/35network-manager/nm-run.sh | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/35network-manager/nm-run.sh b/modules.d/35network-manager/nm-run.sh
|
||||||
|
index 5f4b38ca..a539d5b2 100755
|
||||||
|
--- a/modules.d/35network-manager/nm-run.sh
|
||||||
|
+++ b/modules.d/35network-manager/nm-run.sh
|
||||||
|
@@ -11,7 +11,7 @@ do
|
||||||
|
state=/run/NetworkManager/devices/$(cat $_i/ifindex)
|
||||||
|
grep -q connection-uuid= $state 2>/dev/null || continue
|
||||||
|
ifname=${_i##*/}
|
||||||
|
- sed -n 's/root-path/new_root_path/p' <$state >/tmp/dhclient.$ifname.dhcpopts
|
||||||
|
+ sed -n 's/root-path/new_root_path/p;s/next-server/new_next_server/p' <$state >/tmp/dhclient.$ifname.dhcpopts
|
||||||
|
source_hook initqueue/online $ifname
|
||||||
|
/sbin/netroot $ifname
|
||||||
|
done
|
||||||
|
|
30
SOURCES/0041.patch
Normal file
30
SOURCES/0041.patch
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
From 68fefe6f9424d3f29e6da9133579c385e7b470b2 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||||
|
Date: Mon, 27 May 2019 12:43:59 +0200
|
||||||
|
Subject: [PATCH] network-manager: generate configuration with netroot=
|
||||||
|
|
||||||
|
If the root is on network, let nm-initrd-generator create configuration
|
||||||
|
even if none was explicitly specified on the command line.
|
||||||
|
|
||||||
|
Also do the same if /tmp/net.ifaces exists, because the anaconda plugin
|
||||||
|
creates an empty file in that location in hopes that will make us
|
||||||
|
configure the network.
|
||||||
|
|
||||||
|
(cherry picked from commit 381ab6b7cd2d35bf7f9da63b10c20f5ef6e61a8b)
|
||||||
|
---
|
||||||
|
modules.d/35network-manager/nm-config.sh | 4 ++++
|
||||||
|
1 file changed, 4 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/modules.d/35network-manager/nm-config.sh b/modules.d/35network-manager/nm-config.sh
|
||||||
|
index 1339ebe7..1efa737c 100755
|
||||||
|
--- a/modules.d/35network-manager/nm-config.sh
|
||||||
|
+++ b/modules.d/35network-manager/nm-config.sh
|
||||||
|
@@ -1,3 +1,7 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
+if [ -n "$netroot" ] || [ -e /tmp/net.ifaces ]; then
|
||||||
|
+ echo rd.neednet >> /etc/cmdline.d/35-neednet.conf
|
||||||
|
+fi
|
||||||
|
+
|
||||||
|
/usr/libexec/nm-initrd-generator -- $(getcmdline)
|
||||||
|
|
43
SOURCES/0042.patch
Normal file
43
SOURCES/0042.patch
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
From 53cece208a44c53ecc001cb8eb769f6fb9b3d1dc Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||||
|
Date: Mon, 27 May 2019 11:12:22 +0200
|
||||||
|
Subject: [PATCH] network: parse root=dhcp also with network-manager module
|
||||||
|
|
||||||
|
Move the logic from network-legacy to common network code.
|
||||||
|
|
||||||
|
(cherry picked from commit 35efada5ecffd139660b4a89f4cc3d627752c91e)
|
||||||
|
---
|
||||||
|
modules.d/35network-legacy/module-setup.sh | 1 -
|
||||||
|
modules.d/{35network-legacy => 40network}/dhcp-root.sh | 0
|
||||||
|
modules.d/40network/module-setup.sh | 1 +
|
||||||
|
3 files changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/35network-legacy/module-setup.sh b/modules.d/35network-legacy/module-setup.sh
|
||||||
|
index 71abda36..5a82e998 100755
|
||||||
|
--- a/modules.d/35network-legacy/module-setup.sh
|
||||||
|
+++ b/modules.d/35network-legacy/module-setup.sh
|
||||||
|
@@ -36,7 +36,6 @@ install() {
|
||||||
|
inst_simple -H "/etc/dhclient.conf"
|
||||||
|
cat "$moddir/dhclient.conf" >> "${initdir}/etc/dhclient.conf"
|
||||||
|
inst_hook pre-udev 60 "$moddir/net-genrules.sh"
|
||||||
|
- inst_hook cmdline 91 "$moddir/dhcp-root.sh"
|
||||||
|
inst_hook cmdline 92 "$moddir/parse-ibft.sh"
|
||||||
|
inst_hook cmdline 95 "$moddir/parse-vlan.sh"
|
||||||
|
inst_hook cmdline 96 "$moddir/parse-bond.sh"
|
||||||
|
diff --git a/modules.d/35network-legacy/dhcp-root.sh b/modules.d/40network/dhcp-root.sh
|
||||||
|
similarity index 100%
|
||||||
|
rename from modules.d/35network-legacy/dhcp-root.sh
|
||||||
|
rename to modules.d/40network/dhcp-root.sh
|
||||||
|
diff --git a/modules.d/40network/module-setup.sh b/modules.d/40network/module-setup.sh
|
||||||
|
index e8541636..8e2a74a3 100755
|
||||||
|
--- a/modules.d/40network/module-setup.sh
|
||||||
|
+++ b/modules.d/40network/module-setup.sh
|
||||||
|
@@ -28,6 +28,7 @@ install() {
|
||||||
|
inst_script "$moddir/netroot.sh" "/sbin/netroot"
|
||||||
|
inst_simple "$moddir/net-lib.sh" "/lib/net-lib.sh"
|
||||||
|
inst_hook pre-udev 50 "$moddir/ifname-genrules.sh"
|
||||||
|
+ inst_hook cmdline 91 "$moddir/dhcp-root.sh"
|
||||||
|
|
||||||
|
dracut_need_initqueue
|
||||||
|
}
|
||||||
|
|
620
SOURCES/0043.patch
Normal file
620
SOURCES/0043.patch
Normal file
@ -0,0 +1,620 @@
|
|||||||
|
From 4e10601254bb20891dc2919416d7151583678c3d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||||
|
Date: Mon, 10 Jun 2019 16:04:18 +0200
|
||||||
|
Subject: [PATCH] test: copy BONDBRIDGETEAMVLAN to IFCFG
|
||||||
|
|
||||||
|
The IFCFG test will make sure the network-legacy plugin keeps writing
|
||||||
|
out correct ifcfg files.
|
||||||
|
|
||||||
|
This is a separate commit so that actual changes are visible in the
|
||||||
|
following one.
|
||||||
|
|
||||||
|
(cherry picked from commit 70787ab61957741a05e4046bad49758c4e9bc1cc)
|
||||||
|
---
|
||||||
|
test/TEST-60-IFCFG/99-idesymlinks.rules | 8 +
|
||||||
|
test/TEST-60-IFCFG/Makefile | 10 +
|
||||||
|
test/TEST-60-IFCFG/client-init.sh | 22 +++
|
||||||
|
test/TEST-60-IFCFG/dhcpd.conf | 27 +++
|
||||||
|
test/TEST-60-IFCFG/exports | 1 +
|
||||||
|
test/TEST-60-IFCFG/finished-false.sh | 2 +
|
||||||
|
test/TEST-60-IFCFG/hard-off.sh | 3 +
|
||||||
|
test/TEST-60-IFCFG/hosts | 5 +
|
||||||
|
test/TEST-60-IFCFG/server-init.sh | 120 ++++++++++++
|
||||||
|
test/TEST-60-IFCFG/test.sh | 336 ++++++++++++++++++++++++++++++++
|
||||||
|
10 files changed, 534 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/test/TEST-60-IFCFG/99-idesymlinks.rules b/test/TEST-60-IFCFG/99-idesymlinks.rules
|
||||||
|
new file mode 100644
|
||||||
|
index 00000000..d557790a
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/test/TEST-60-IFCFG/99-idesymlinks.rules
|
||||||
|
@@ -0,0 +1,8 @@
|
||||||
|
+ACTION=="add|change", SUBSYSTEM=="block", ENV{DEVTYPE}=="disk", KERNEL=="hda", SYMLINK+="sda"
|
||||||
|
+ACTION=="add|change", SUBSYSTEM=="block", ENV{DEVTYPE}=="partition", KERNEL=="hda*", SYMLINK+="sda$env{MINOR}"
|
||||||
|
+ACTION=="add|change", SUBSYSTEM=="block", ENV{DEVTYPE}=="disk", KERNEL=="hdb", SYMLINK+="sdb"
|
||||||
|
+ACTION=="add|change", SUBSYSTEM=="block", ENV{DEVTYPE}=="partition", KERNEL=="hdb*", SYMLINK+="sdb$env{MINOR}"
|
||||||
|
+ACTION=="add|change", SUBSYSTEM=="block", ENV{DEVTYPE}=="disk", KERNEL=="hdc", SYMLINK+="sdc"
|
||||||
|
+ACTION=="add|change", SUBSYSTEM=="block", ENV{DEVTYPE}=="partition", KERNEL=="hdc*", SYMLINK+="sdc$env{MINOR}"
|
||||||
|
+ACTION=="add|change", SUBSYSTEM=="block", ENV{DEVTYPE}=="disk", KERNEL=="hdd", SYMLINK+="sdd"
|
||||||
|
+ACTION=="add|change", SUBSYSTEM=="block", ENV{DEVTYPE}=="partition", KERNEL=="hdd*", SYMLINK+="sdd$env{MINOR}"
|
||||||
|
diff --git a/test/TEST-60-IFCFG/Makefile b/test/TEST-60-IFCFG/Makefile
|
||||||
|
new file mode 100644
|
||||||
|
index 00000000..aad27059
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/test/TEST-60-IFCFG/Makefile
|
||||||
|
@@ -0,0 +1,10 @@
|
||||||
|
+all:
|
||||||
|
+ @$(MAKE) -s --no-print-directory -C ../.. all
|
||||||
|
+ @V=$(V) basedir=../.. testdir=../ ./test.sh --all
|
||||||
|
+setup:
|
||||||
|
+ @$(MAKE) --no-print-directory -C ../.. all
|
||||||
|
+ @basedir=../.. testdir=../ ./test.sh --setup
|
||||||
|
+clean:
|
||||||
|
+ @basedir=../.. testdir=../ ./test.sh --clean
|
||||||
|
+run:
|
||||||
|
+ @basedir=../.. testdir=../ ./test.sh --run
|
||||||
|
diff --git a/test/TEST-60-IFCFG/client-init.sh b/test/TEST-60-IFCFG/client-init.sh
|
||||||
|
new file mode 100755
|
||||||
|
index 00000000..8c33ff0f
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/test/TEST-60-IFCFG/client-init.sh
|
||||||
|
@@ -0,0 +1,22 @@
|
||||||
|
+#!/bin/sh
|
||||||
|
+exec >/dev/console 2>&1
|
||||||
|
+export PATH=/sbin:/bin:/usr/sbin:/usr/bin
|
||||||
|
+strstr() { [ "${1#*$2*}" != "$1" ]; }
|
||||||
|
+CMDLINE=$(while read line; do echo $line;done < /proc/cmdline)
|
||||||
|
+export TERM=linux
|
||||||
|
+export PS1='initramfs-test:\w\$ '
|
||||||
|
+stty sane
|
||||||
|
+echo "made it to the rootfs! Powering down."
|
||||||
|
+
|
||||||
|
+(
|
||||||
|
+ echo OK
|
||||||
|
+ ip -o -4 address show scope global | while read n if rest; do echo $if;done | sort
|
||||||
|
+ for i in /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-*; do
|
||||||
|
+ echo $i
|
||||||
|
+ grep -v 'UUID=' $i
|
||||||
|
+ done
|
||||||
|
+ echo EOF
|
||||||
|
+) > /dev/sda
|
||||||
|
+
|
||||||
|
+strstr "$CMDLINE" "rd.shell" && sh -i
|
||||||
|
+poweroff -f
|
||||||
|
diff --git a/test/TEST-60-IFCFG/dhcpd.conf b/test/TEST-60-IFCFG/dhcpd.conf
|
||||||
|
new file mode 100644
|
||||||
|
index 00000000..e26bd60b
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/test/TEST-60-IFCFG/dhcpd.conf
|
||||||
|
@@ -0,0 +1,27 @@
|
||||||
|
+ddns-update-style none;
|
||||||
|
+
|
||||||
|
+use-host-decl-names true;
|
||||||
|
+
|
||||||
|
+subnet 192.168.50.0 netmask 255.255.255.0 {
|
||||||
|
+ option subnet-mask 255.255.255.0;
|
||||||
|
+ option routers 192.168.50.1;
|
||||||
|
+ next-server 192.168.50.1;
|
||||||
|
+ server-identifier 192.168.50.1;
|
||||||
|
+ option domain-name-servers 192.168.50.1;
|
||||||
|
+ option domain-search "example.com";
|
||||||
|
+ option domain-name "other.com";
|
||||||
|
+ option root-path "nfs:192.168.50.1:/nfs/client";
|
||||||
|
+ range 192.168.50.10 192.168.50.100;
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+subnet 192.168.51.0 netmask 255.255.255.0 {
|
||||||
|
+ option subnet-mask 255.255.255.0;
|
||||||
|
+ option routers 192.168.51.1;
|
||||||
|
+ next-server 192.168.51.1;
|
||||||
|
+ server-identifier 192.168.51.1;
|
||||||
|
+ option domain-name-servers 192.168.51.1;
|
||||||
|
+ option domain-search "example.com";
|
||||||
|
+ option domain-name "other.com";
|
||||||
|
+ option root-path "nfs:192.168.51.1:/nfs/client";
|
||||||
|
+ range 192.168.51.10 192.168.51.100;
|
||||||
|
+}
|
||||||
|
diff --git a/test/TEST-60-IFCFG/exports b/test/TEST-60-IFCFG/exports
|
||||||
|
new file mode 100644
|
||||||
|
index 00000000..ff5f29b1
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/test/TEST-60-IFCFG/exports
|
||||||
|
@@ -0,0 +1 @@
|
||||||
|
+/nfs/client 192.168.50.0/24(rw,insecure,no_subtree_check,no_root_squash)
|
||||||
|
diff --git a/test/TEST-60-IFCFG/finished-false.sh b/test/TEST-60-IFCFG/finished-false.sh
|
||||||
|
new file mode 100755
|
||||||
|
index 00000000..ecdbef95
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/test/TEST-60-IFCFG/finished-false.sh
|
||||||
|
@@ -0,0 +1,2 @@
|
||||||
|
+#!/bin/sh
|
||||||
|
+exit 1
|
||||||
|
diff --git a/test/TEST-60-IFCFG/hard-off.sh b/test/TEST-60-IFCFG/hard-off.sh
|
||||||
|
new file mode 100755
|
||||||
|
index 00000000..12c3d5ac
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/test/TEST-60-IFCFG/hard-off.sh
|
||||||
|
@@ -0,0 +1,3 @@
|
||||||
|
+#!/bin/sh
|
||||||
|
+getarg rd.shell || poweroff -f
|
||||||
|
+getarg failme && poweroff -f
|
||||||
|
diff --git a/test/TEST-60-IFCFG/hosts b/test/TEST-60-IFCFG/hosts
|
||||||
|
new file mode 100644
|
||||||
|
index 00000000..d02a4e9b
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/test/TEST-60-IFCFG/hosts
|
||||||
|
@@ -0,0 +1,5 @@
|
||||||
|
+127.0.0.1 localhost
|
||||||
|
+192.168.50.1 server
|
||||||
|
+192.168.50.100 client-if1
|
||||||
|
+192.168.50.101 client-if2
|
||||||
|
+192.168.50.102 client-if3
|
||||||
|
diff --git a/test/TEST-60-IFCFG/server-init.sh b/test/TEST-60-IFCFG/server-init.sh
|
||||||
|
new file mode 100755
|
||||||
|
index 00000000..b9f01c9b
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/test/TEST-60-IFCFG/server-init.sh
|
||||||
|
@@ -0,0 +1,120 @@
|
||||||
|
+#!/bin/sh
|
||||||
|
+exec </dev/console >/dev/console 2>&1
|
||||||
|
+set -x
|
||||||
|
+export PATH=/sbin:/bin:/usr/sbin:/usr/bin
|
||||||
|
+export TERM=linux
|
||||||
|
+export PS1='nfstest-server:\w\$ '
|
||||||
|
+stty sane
|
||||||
|
+echo "made it to the rootfs!"
|
||||||
|
+echo server > /proc/sys/kernel/hostname
|
||||||
|
+
|
||||||
|
+wait_for_if_link() {
|
||||||
|
+ local cnt=0
|
||||||
|
+ local li
|
||||||
|
+ while [ $cnt -lt 600 ]; do
|
||||||
|
+ li=$(ip -o link show dev $1 2>/dev/null)
|
||||||
|
+ [ -n "$li" ] && return 0
|
||||||
|
+ sleep 0.1
|
||||||
|
+ cnt=$(($cnt+1))
|
||||||
|
+ done
|
||||||
|
+ return 1
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+wait_for_if_up() {
|
||||||
|
+ local cnt=0
|
||||||
|
+ local li
|
||||||
|
+ while [ $cnt -lt 200 ]; do
|
||||||
|
+ li=$(ip -o link show up dev $1)
|
||||||
|
+ [ -n "$li" ] && return 0
|
||||||
|
+ sleep 0.1
|
||||||
|
+ cnt=$(($cnt+1))
|
||||||
|
+ done
|
||||||
|
+ return 1
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+wait_for_route_ok() {
|
||||||
|
+ local cnt=0
|
||||||
|
+ while [ $cnt -lt 200 ]; do
|
||||||
|
+ li=$(ip route show)
|
||||||
|
+ [ -n "$li" ] && [ -z "${li##*$1*}" ] && return 0
|
||||||
|
+ sleep 0.1
|
||||||
|
+ cnt=$(($cnt+1))
|
||||||
|
+ done
|
||||||
|
+ return 1
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+linkup() {
|
||||||
|
+ wait_for_if_link $1 2>/dev/null\
|
||||||
|
+ && ip link set $1 up 2>/dev/null\
|
||||||
|
+ && wait_for_if_up $1 2>/dev/null
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+modprobe --all -b -q 8021q ipvlan macvlan
|
||||||
|
+>/dev/watchdog
|
||||||
|
+ip addr add 127.0.0.1/8 dev lo
|
||||||
|
+linkup lo
|
||||||
|
+ip link set dev eth0 name ens3
|
||||||
|
+ip addr add 192.168.50.1/24 dev ens3
|
||||||
|
+linkup ens3
|
||||||
|
+>/dev/watchdog
|
||||||
|
+ip link set dev eth1 name ens4
|
||||||
|
+ip link add dev ens4.1 link ens4 type vlan id 1
|
||||||
|
+ip link add dev ens4.2 link ens4 type vlan id 2
|
||||||
|
+ip link add dev ens4.3 link ens4 type vlan id 3
|
||||||
|
+ip link add dev ens4.4 link ens4 type vlan id 4
|
||||||
|
+ip addr add 192.168.54.1/24 dev ens4.1
|
||||||
|
+ip addr add 192.168.55.1/24 dev ens4.2
|
||||||
|
+ip addr add 192.168.56.1/24 dev ens4.3
|
||||||
|
+ip addr add 192.168.57.1/24 dev ens4.4
|
||||||
|
+linkup ens4
|
||||||
|
+ip link set dev ens4.1 up
|
||||||
|
+ip link set dev ens4.2 up
|
||||||
|
+ip link set dev ens4.3 up
|
||||||
|
+ip link set dev ens4.4 up
|
||||||
|
+ip link set dev eth2 name ens5
|
||||||
|
+ip addr add 192.168.51.1/24 dev ens5
|
||||||
|
+linkup ens5
|
||||||
|
+ip link set dev eth3 name ens6
|
||||||
|
+linkup ens6
|
||||||
|
+>/dev/watchdog
|
||||||
|
+modprobe af_packet
|
||||||
|
+> /dev/watchdog
|
||||||
|
+modprobe sunrpc
|
||||||
|
+>/dev/watchdog
|
||||||
|
+mount -t rpc_pipefs sunrpc /var/lib/nfs/rpc_pipefs
|
||||||
|
+>/dev/watchdog
|
||||||
|
+[ -x /sbin/portmap ] && portmap
|
||||||
|
+>/dev/watchdog
|
||||||
|
+mkdir -p /run/rpcbind
|
||||||
|
+[ -x /sbin/rpcbind ] && rpcbind
|
||||||
|
+>/dev/watchdog
|
||||||
|
+modprobe nfsd
|
||||||
|
+>/dev/watchdog
|
||||||
|
+mount -t nfsd nfsd /proc/fs/nfsd
|
||||||
|
+>/dev/watchdog
|
||||||
|
+exportfs -r
|
||||||
|
+>/dev/watchdog
|
||||||
|
+rpc.nfsd
|
||||||
|
+>/dev/watchdog
|
||||||
|
+rpc.mountd
|
||||||
|
+>/dev/watchdog
|
||||||
|
+rpc.idmapd
|
||||||
|
+>/dev/watchdog
|
||||||
|
+exportfs -r
|
||||||
|
+>/dev/watchdog
|
||||||
|
+>/var/lib/dhcpd/dhcpd.leases
|
||||||
|
+>/dev/watchdog
|
||||||
|
+chmod 777 /var/lib/dhcpd/dhcpd.leases
|
||||||
|
+>/dev/watchdog
|
||||||
|
+dhcpd -cf /etc/dhcpd.conf -lf /var/lib/dhcpd/dhcpd.leases ens3 ens5
|
||||||
|
+#echo -n 'V' > /dev/watchdog
|
||||||
|
+#sh -i
|
||||||
|
+#tcpdump -i ens3
|
||||||
|
+# Wait forever for the VM to die
|
||||||
|
+echo "Serving NFS mounts"
|
||||||
|
+while :; do
|
||||||
|
+ sleep 10
|
||||||
|
+ >/dev/watchdog
|
||||||
|
+done
|
||||||
|
+mount -n -o remount,ro /
|
||||||
|
+poweroff -f
|
||||||
|
diff --git a/test/TEST-60-IFCFG/test.sh b/test/TEST-60-IFCFG/test.sh
|
||||||
|
new file mode 100755
|
||||||
|
index 00000000..8c11a7d3
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/test/TEST-60-IFCFG/test.sh
|
||||||
|
@@ -0,0 +1,336 @@
|
||||||
|
+#!/bin/bash
|
||||||
|
+# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||||
|
+# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||||
|
+TEST_DESCRIPTION="root filesystem on NFS with bridging/bonding/vlan"
|
||||||
|
+KVERSION=${KVERSION-$(uname -r)}
|
||||||
|
+
|
||||||
|
+# Uncomment this to debug failures
|
||||||
|
+#DEBUGFAIL="rd.shell rd.break"
|
||||||
|
+#DEBUGFAIL="rd.shell rd.break rd.debug"
|
||||||
|
+#SERIAL="tcp:127.0.0.1:9999"
|
||||||
|
+
|
||||||
|
+run_server() {
|
||||||
|
+ # Start server first
|
||||||
|
+ echo "MULTINIC TEST SETUP: Starting DHCP/NFS server"
|
||||||
|
+
|
||||||
|
+ fsck -a "$TESTDIR"/server.ext3 || return 1
|
||||||
|
+
|
||||||
|
+ $testdir/run-qemu \
|
||||||
|
+ -hda "$TESTDIR"/server.ext3 \
|
||||||
|
+ -m 512M -smp 2 \
|
||||||
|
+ -display none \
|
||||||
|
+ -netdev socket,id=n0,listen=127.0.0.1:12370 \
|
||||||
|
+ -netdev socket,id=n1,listen=127.0.0.1:12371 \
|
||||||
|
+ -netdev socket,id=n2,listen=127.0.0.1:12372 \
|
||||||
|
+ -netdev socket,id=n3,listen=127.0.0.1:12373 \
|
||||||
|
+ -device e1000,netdev=n0,mac=52:54:01:12:34:56 \
|
||||||
|
+ -device e1000,netdev=n1,mac=52:54:01:12:34:57 \
|
||||||
|
+ -device e1000,netdev=n2,mac=52:54:01:12:34:58 \
|
||||||
|
+ -device e1000,netdev=n3,mac=52:54:01:12:34:59 \
|
||||||
|
+ ${SERIAL:+-serial "$SERIAL"} \
|
||||||
|
+ ${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
||||||
|
+ -watchdog i6300esb -watchdog-action poweroff \
|
||||||
|
+ -no-reboot \
|
||||||
|
+ -append "panic=1 loglevel=7 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 rd.debug" \
|
||||||
|
+ -initrd "$TESTDIR"/initramfs.server \
|
||||||
|
+ -pidfile "$TESTDIR"/server.pid -daemonize || return 1
|
||||||
|
+ chmod 644 -- "$TESTDIR"/server.pid || return 1
|
||||||
|
+
|
||||||
|
+ # Cleanup the terminal if we have one
|
||||||
|
+ tty -s && stty sane
|
||||||
|
+
|
||||||
|
+ echo Sleeping 10 seconds to give the server a head start
|
||||||
|
+ sleep 10
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+client_test() {
|
||||||
|
+ local test_name="$1"
|
||||||
|
+ local do_vlan13="$2"
|
||||||
|
+ local cmdline="$3"
|
||||||
|
+ local check="$4"
|
||||||
|
+ local CONF
|
||||||
|
+
|
||||||
|
+ echo "CLIENT TEST START: $test_name"
|
||||||
|
+
|
||||||
|
+ [ "$do_vlan13" != "yes" ] && unset do_vlan13
|
||||||
|
+
|
||||||
|
+ # Need this so kvm-qemu will boot (needs non-/dev/zero local disk)
|
||||||
|
+ if ! dd if=/dev/zero of="$TESTDIR"/client.img bs=1M count=1; then
|
||||||
|
+ echo "Unable to make client sda image" 1>&2
|
||||||
|
+ return 1
|
||||||
|
+ fi
|
||||||
|
+ if [[ $do_vlan13 ]]; then
|
||||||
|
+ nic1=" -netdev socket,connect=127.0.0.1:12371,id=n1"
|
||||||
|
+ nic3=" -netdev socket,connect=127.0.0.1:12373,id=n3"
|
||||||
|
+ else
|
||||||
|
+ nic1=" -netdev hubport,id=n1,hubid=2"
|
||||||
|
+ nic3=" -netdev hubport,id=n3,hubid=3"
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ if $testdir/run-qemu --help | grep -qF -m1 'netdev hubport,id=str,hubid=n[,netdev=nd]' && echo OK; then
|
||||||
|
+ $testdir/run-qemu \
|
||||||
|
+ -hda "$TESTDIR"/client.img -m 512M -smp 2 -nographic \
|
||||||
|
+ -netdev socket,connect=127.0.0.1:12370,id=s1 \
|
||||||
|
+ -netdev hubport,hubid=1,id=h1,netdev=s1 \
|
||||||
|
+ -netdev hubport,hubid=1,id=h2 -device e1000,mac=52:54:00:12:34:01,netdev=h2 \
|
||||||
|
+ -netdev hubport,hubid=1,id=h3 -device e1000,mac=52:54:00:12:34:02,netdev=h3 \
|
||||||
|
+ $nic1 -device e1000,mac=52:54:00:12:34:03,netdev=n1 \
|
||||||
|
+ -netdev socket,connect=127.0.0.1:12372,id=n2 -device e1000,mac=52:54:00:12:34:04,netdev=n2 \
|
||||||
|
+ $nic3 -device e1000,mac=52:54:00:12:34:05,netdev=n3 \
|
||||||
|
+ -watchdog i6300esb -watchdog-action poweroff \
|
||||||
|
+ -no-reboot \
|
||||||
|
+ -append "panic=1 $cmdline rd.debug $DEBUGFAIL rd.retry=5 rw console=ttyS0,115200n81 selinux=0 init=/sbin/init" \
|
||||||
|
+ -initrd "$TESTDIR"/initramfs.testing
|
||||||
|
+ else
|
||||||
|
+ $testdir/run-qemu \
|
||||||
|
+ -hda "$TESTDIR"/client.img -m 512M -smp 2 -nographic \
|
||||||
|
+ -net socket,vlan=0,connect=127.0.0.1:12370 \
|
||||||
|
+ ${do_vlan13:+-net socket,vlan=1,connect=127.0.0.1:12371} \
|
||||||
|
+ -net socket,vlan=2,connect=127.0.0.1:12372 \
|
||||||
|
+ ${do_vlan13:+-net socket,vlan=3,connect=127.0.0.1:12373} \
|
||||||
|
+ -net nic,vlan=0,macaddr=52:54:00:12:34:01,model=e1000 \
|
||||||
|
+ -net nic,vlan=0,macaddr=52:54:00:12:34:02,model=e1000 \
|
||||||
|
+ -net nic,vlan=1,macaddr=52:54:00:12:34:03,model=e1000 \
|
||||||
|
+ -net nic,vlan=2,macaddr=52:54:00:12:34:04,model=e1000 \
|
||||||
|
+ -net nic,vlan=3,macaddr=52:54:00:12:34:05,model=e1000 \
|
||||||
|
+ -watchdog i6300esb -watchdog-action poweroff \
|
||||||
|
+ -no-reboot \
|
||||||
|
+ -append "panic=1 $cmdline rd.debug $DEBUGFAIL rd.retry=5 rw console=ttyS0,115200n81 selinux=0 init=/sbin/init" \
|
||||||
|
+ -initrd "$TESTDIR"/initramfs.testing
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ {
|
||||||
|
+ read OK
|
||||||
|
+ if [[ "$OK" != "OK" ]]; then
|
||||||
|
+ echo "CLIENT TEST END: $test_name [FAILED - BAD EXIT]"
|
||||||
|
+ return 1
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ while read line; do
|
||||||
|
+ [[ $line == END ]] && break
|
||||||
|
+ CONF+="$line "
|
||||||
|
+ done
|
||||||
|
+ } < "$TESTDIR"/client.img || return 1
|
||||||
|
+
|
||||||
|
+ if [[ "$check" != "$CONF" ]]; then
|
||||||
|
+ echo "Expected: '$check'"
|
||||||
|
+ echo
|
||||||
|
+ echo
|
||||||
|
+ echo "Got: '$CONF'"
|
||||||
|
+ echo "CLIENT TEST END: $test_name [FAILED - BAD CONF]"
|
||||||
|
+ return 1
|
||||||
|
+ fi
|
||||||
|
+
|
||||||
|
+ echo "CLIENT TEST END: $test_name [OK]"
|
||||||
|
+ return 0
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+
|
||||||
|
+test_run() {
|
||||||
|
+ if ! run_server; then
|
||||||
|
+ echo "Failed to start server" 1>&2
|
||||||
|
+ return 1
|
||||||
|
+ fi
|
||||||
|
+ test_client || { kill_server; return 1; }
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+test_client() {
|
||||||
|
+ client_test "Multiple VLAN" \
|
||||||
|
+ "yes" \
|
||||||
|
+ "
|
||||||
|
+vlan=vlan0001:ens5
|
||||||
|
+vlan=vlan2:ens5
|
||||||
|
+vlan=ens5.3:ens5
|
||||||
|
+vlan=ens5.0004:ens5
|
||||||
|
+ip=ens3:dhcp
|
||||||
|
+ip=192.168.54.101::192.168.54.1:24:test:vlan0001:none
|
||||||
|
+ip=192.168.55.102::192.168.55.1:24:test:vlan2:none
|
||||||
|
+ip=192.168.56.103::192.168.56.1:24:test:ens5.3:none
|
||||||
|
+ip=192.168.57.104::192.168.57.1:24:test:ens5.0004:none
|
||||||
|
+rd.neednet=1
|
||||||
|
+root=nfs:192.168.50.1:/nfs/client bootdev=ens3
|
||||||
|
+" \
|
||||||
|
+ 'ens3 ens5.0004 ens5.3 vlan0001 vlan2 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens3 # Generated by dracut initrd NAME="ens3" DEVICE="ens3" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp TYPE=Ethernet /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens5.0004 # Generated by dracut initrd NAME="ens5.0004" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.57.104" PREFIX="24" GATEWAY="192.168.57.1" TYPE=Vlan DEVICE="ens5.0004" VLAN=yes PHYSDEV="ens5" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens5.3 # Generated by dracut initrd NAME="ens5.3" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.56.103" PREFIX="24" GATEWAY="192.168.56.1" TYPE=Vlan DEVICE="ens5.3" VLAN=yes PHYSDEV="ens5" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-vlan0001 # Generated by dracut initrd NAME="vlan0001" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.54.101" PREFIX="24" GATEWAY="192.168.54.1" TYPE=Vlan DEVICE="vlan0001" VLAN=yes PHYSDEV="ens5" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-vlan2 # Generated by dracut initrd NAME="vlan2" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.55.102" PREFIX="24" GATEWAY="192.168.55.1" TYPE=Vlan DEVICE="vlan2" VLAN=yes PHYSDEV="ens5" EOF ' \
|
||||||
|
+ || return 1
|
||||||
|
+
|
||||||
|
+ client_test "Multiple Bonds" \
|
||||||
|
+ "yes" \
|
||||||
|
+ "
|
||||||
|
+bond=bond0:ens4,ens5
|
||||||
|
+bond=bond1:ens6,ens7
|
||||||
|
+ip=bond0:dhcp
|
||||||
|
+ip=bond1:dhcp
|
||||||
|
+rd.neednet=1
|
||||||
|
+root=nfs:192.168.50.1:/nfs/client bootdev=bond0
|
||||||
|
+" \
|
||||||
|
+ 'bond0 bond1 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-bond0 # Generated by dracut initrd NAME="bond0" DEVICE="bond0" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp BONDING_OPTS="" NAME="bond0" TYPE=Bond /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-bond1 # Generated by dracut initrd NAME="bond1" DEVICE="bond1" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp BONDING_OPTS="" NAME="bond1" TYPE=Bond /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens4 # Generated by dracut initrd NAME="ens4" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond0" DEVICE="ens4" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens5 # Generated by dracut initrd NAME="ens5" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond0" DEVICE="ens5" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens6 # Generated by dracut initrd NAME="ens6" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond1" DEVICE="ens6" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens7 # Generated by dracut initrd NAME="ens7" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond1" DEVICE="ens7" EOF ' \
|
||||||
|
+ || return 1
|
||||||
|
+
|
||||||
|
+ client_test "Multiple Bridges" \
|
||||||
|
+ "no" \
|
||||||
|
+ "
|
||||||
|
+bridge=br0:ens4,ens5
|
||||||
|
+bridge=br1:ens6,ens7
|
||||||
|
+ip=br0:dhcp
|
||||||
|
+ip=br1:dhcp
|
||||||
|
+rd.neednet=1
|
||||||
|
+root=nfs:192.168.50.1:/nfs/client bootdev=br0
|
||||||
|
+" \
|
||||||
|
+ 'br0 br1 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-br0 # Generated by dracut initrd NAME="br0" DEVICE="br0" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp TYPE=Bridge NAME="br0" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-br1 # Generated by dracut initrd NAME="br1" DEVICE="br1" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp TYPE=Bridge NAME="br1" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens4 # Generated by dracut initrd NAME="ens4" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br0" DEVICE="ens4" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens5 # Generated by dracut initrd NAME="ens5" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br0" DEVICE="ens5" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens6 # Generated by dracut initrd NAME="ens6" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br1" DEVICE="ens6" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens7 # Generated by dracut initrd NAME="ens7" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br1" DEVICE="ens7" EOF ' \
|
||||||
|
+ || return 1
|
||||||
|
+
|
||||||
|
+ kill_server
|
||||||
|
+ return 0
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+test_setup() {
|
||||||
|
+ # Make server root
|
||||||
|
+ dd if=/dev/null of="$TESTDIR"/server.ext3 bs=1M seek=120
|
||||||
|
+ mke2fs -j -F -- "$TESTDIR"/server.ext3
|
||||||
|
+ mkdir -- "$TESTDIR"/mnt
|
||||||
|
+ mount -o loop -- "$TESTDIR"/server.ext3 "$TESTDIR"/mnt
|
||||||
|
+ kernel=$KVERSION
|
||||||
|
+ (
|
||||||
|
+ export initdir="$TESTDIR"/mnt
|
||||||
|
+ . "$basedir"/dracut-init.sh
|
||||||
|
+
|
||||||
|
+ (
|
||||||
|
+ cd "$initdir";
|
||||||
|
+ mkdir -p -- dev sys proc run etc var/run tmp var/lib/{dhcpd,rpcbind}
|
||||||
|
+ mkdir -p -- var/lib/nfs/{v4recovery,rpc_pipefs}
|
||||||
|
+ chmod 777 -- var/lib/rpcbind var/lib/nfs
|
||||||
|
+ )
|
||||||
|
+
|
||||||
|
+ for _f in modules.builtin.bin modules.builtin; do
|
||||||
|
+ [[ $srcmods/$_f ]] && break
|
||||||
|
+ done || {
|
||||||
|
+ dfatal "No modules.builtin.bin and modules.builtin found!"
|
||||||
|
+ return 1
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ for _f in modules.builtin.bin modules.builtin modules.order; do
|
||||||
|
+ [[ $srcmods/$_f ]] && inst_simple "$srcmods/$_f" "/lib/modules/$kernel/$_f"
|
||||||
|
+ done
|
||||||
|
+
|
||||||
|
+ inst_multiple sh ls shutdown poweroff stty cat ps ln ip \
|
||||||
|
+ dmesg mkdir cp ping exportfs \
|
||||||
|
+ modprobe rpc.nfsd rpc.mountd showmount tcpdump \
|
||||||
|
+ /etc/services sleep mount chmod
|
||||||
|
+ for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do
|
||||||
|
+ [ -f "${_terminfodir}"/l/linux ] && break
|
||||||
|
+ done
|
||||||
|
+ inst_multiple -o "${_terminfodir}"/l/linux
|
||||||
|
+ type -P portmap >/dev/null && inst_multiple portmap
|
||||||
|
+ type -P rpcbind >/dev/null && inst_multiple rpcbind
|
||||||
|
+ [ -f /etc/netconfig ] && inst_multiple /etc/netconfig
|
||||||
|
+ type -P dhcpd >/dev/null && inst_multiple dhcpd
|
||||||
|
+ [ -x /usr/sbin/dhcpd3 ] && inst /usr/sbin/dhcpd3 /usr/sbin/dhcpd
|
||||||
|
+ instmods nfsd sunrpc ipv6 lockd af_packet 8021q ipvlan macvlan
|
||||||
|
+ inst_simple /etc/os-release
|
||||||
|
+ inst ./server-init.sh /sbin/init
|
||||||
|
+ inst ./hosts /etc/hosts
|
||||||
|
+ inst ./exports /etc/exports
|
||||||
|
+ inst ./dhcpd.conf /etc/dhcpd.conf
|
||||||
|
+ inst_multiple /etc/nsswitch.conf /etc/rpc /etc/protocols
|
||||||
|
+
|
||||||
|
+ inst_multiple rpc.idmapd /etc/idmapd.conf
|
||||||
|
+
|
||||||
|
+ inst_libdir_file 'libnfsidmap_nsswitch.so*'
|
||||||
|
+ inst_libdir_file 'libnfsidmap/*.so*'
|
||||||
|
+ inst_libdir_file 'libnfsidmap*.so*'
|
||||||
|
+
|
||||||
|
+ _nsslibs=$(sed -e '/^#/d' -e 's/^.*://' -e 's/\[NOTFOUND=return\]//' /etc/nsswitch.conf \
|
||||||
|
+ | tr -s '[:space:]' '\n' | sort -u | tr -s '[:space:]' '|')
|
||||||
|
+ _nsslibs=${_nsslibs#|}
|
||||||
|
+ _nsslibs=${_nsslibs%|}
|
||||||
|
+
|
||||||
|
+ inst_libdir_file -n "$_nsslibs" 'libnss_*.so*'
|
||||||
|
+
|
||||||
|
+ inst /etc/nsswitch.conf /etc/nsswitch.conf
|
||||||
|
+ inst /etc/passwd /etc/passwd
|
||||||
|
+ inst /etc/group /etc/group
|
||||||
|
+
|
||||||
|
+ cp -a -- /etc/ld.so.conf* "$initdir"/etc
|
||||||
|
+ ldconfig -r "$initdir"
|
||||||
|
+ dracut_kernel_post
|
||||||
|
+ )
|
||||||
|
+
|
||||||
|
+ # Make client root inside server root
|
||||||
|
+ (
|
||||||
|
+ export initdir="$TESTDIR"/mnt/nfs/client
|
||||||
|
+ . "$basedir"/dracut-init.sh
|
||||||
|
+ inst_multiple sh shutdown poweroff stty cat ps ln ip \
|
||||||
|
+ mount dmesg mkdir cp ping grep ls sort
|
||||||
|
+ for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do
|
||||||
|
+ [[ -f ${_terminfodir}/l/linux ]] && break
|
||||||
|
+ done
|
||||||
|
+ inst_multiple -o "${_terminfodir}"/l/linux
|
||||||
|
+ inst_simple /etc/os-release
|
||||||
|
+ inst ./client-init.sh /sbin/init
|
||||||
|
+ (
|
||||||
|
+ cd "$initdir"
|
||||||
|
+ mkdir -p -- dev sys proc etc run
|
||||||
|
+ mkdir -p -- var/lib/nfs/rpc_pipefs
|
||||||
|
+ )
|
||||||
|
+ inst /etc/nsswitch.conf /etc/nsswitch.conf
|
||||||
|
+ inst /etc/passwd /etc/passwd
|
||||||
|
+ inst /etc/group /etc/group
|
||||||
|
+
|
||||||
|
+ inst_multiple rpc.idmapd /etc/idmapd.conf
|
||||||
|
+ inst_libdir_file 'libnfsidmap_nsswitch.so*'
|
||||||
|
+ inst_libdir_file 'libnfsidmap/*.so*'
|
||||||
|
+ inst_libdir_file 'libnfsidmap*.so*'
|
||||||
|
+
|
||||||
|
+ _nsslibs=$(sed -e '/^#/d' -e 's/^.*://' -e 's/\[NOTFOUND=return\]//' -- /etc/nsswitch.conf \
|
||||||
|
+ | tr -s '[:space:]' '\n' | sort -u | tr -s '[:space:]' '|')
|
||||||
|
+ _nsslibs=${_nsslibs#|}
|
||||||
|
+ _nsslibs=${_nsslibs%|}
|
||||||
|
+
|
||||||
|
+ inst_libdir_file -n "$_nsslibs" 'libnss_*.so*'
|
||||||
|
+
|
||||||
|
+ cp -a -- /etc/ld.so.conf* "$initdir"/etc
|
||||||
|
+ ldconfig -r "$initdir"
|
||||||
|
+ )
|
||||||
|
+
|
||||||
|
+ umount "$TESTDIR"/mnt
|
||||||
|
+ rm -fr -- "$TESTDIR"/mnt
|
||||||
|
+
|
||||||
|
+ # Make an overlay with needed tools for the test harness
|
||||||
|
+ (
|
||||||
|
+ export initdir="$TESTDIR"/overlay
|
||||||
|
+ . "$basedir"/dracut-init.sh
|
||||||
|
+ inst_multiple poweroff shutdown
|
||||||
|
+ inst_hook emergency 000 ./hard-off.sh
|
||||||
|
+ inst_simple ./99-idesymlinks.rules /etc/udev/rules.d/99-idesymlinks.rules
|
||||||
|
+ )
|
||||||
|
+
|
||||||
|
+ # Make server's dracut image
|
||||||
|
+ $basedir/dracut.sh -l -i "$TESTDIR"/overlay / \
|
||||||
|
+ --no-early-microcode \
|
||||||
|
+ -m "udev-rules base rootfs-block fs-lib debug kernel-modules watchdog" \
|
||||||
|
+ -d "ipvlan macvlan af_packet piix ide-gd_mod ata_piix ext3 sd_mod nfsv2 nfsv3 nfsv4 nfs_acl nfs_layout_nfsv41_files nfsd e1000 i6300esb ib700wdt" \
|
||||||
|
+ --no-hostonly-cmdline -N \
|
||||||
|
+ -f "$TESTDIR"/initramfs.server "$KVERSION" || return 1
|
||||||
|
+
|
||||||
|
+ # Make client's dracut image
|
||||||
|
+ $basedir/dracut.sh -l -i "$TESTDIR"/overlay / \
|
||||||
|
+ --no-early-microcode \
|
||||||
|
+ -o "plymouth" \
|
||||||
|
+ -a "debug" \
|
||||||
|
+ -d "ipvlan macvlan af_packet piix sd_mod sr_mod ata_piix ide-gd_mod e1000 nfsv2 nfsv3 nfsv4 nfs_acl nfs_layout_nfsv41_files sunrpc i6300esb ib700wdt" \
|
||||||
|
+ --no-hostonly-cmdline -N \
|
||||||
|
+ -f "$TESTDIR"/initramfs.testing "$KVERSION" || return 1
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+kill_server() {
|
||||||
|
+ if [[ -s "$TESTDIR"/server.pid ]]; then
|
||||||
|
+ kill -TERM -- $(cat "$TESTDIR"/server.pid)
|
||||||
|
+ rm -f -- "$TESTDIR"/server.pid
|
||||||
|
+ fi
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+test_cleanup() {
|
||||||
|
+ kill_server
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+. "$testdir"/test-functions
|
||||||
|
|
53
SOURCES/0044.patch
Normal file
53
SOURCES/0044.patch
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
From 3b89c398895abe5fc62e3c9240718310222925ef Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||||
|
Date: Mon, 10 Jun 2019 16:04:33 +0200
|
||||||
|
Subject: [PATCH] test/IFCFG: make sure the network-legacy plugin is being used
|
||||||
|
|
||||||
|
If the network-manager plugin is used instead, it wouldn't write out
|
||||||
|
ifcfg files and we wouldn't have anything to check.
|
||||||
|
|
||||||
|
While at that, also enable the test.
|
||||||
|
|
||||||
|
(cherry picked from commit 2b1b3bcdcb0ddaa18337f18da515adb6284df0ab)
|
||||||
|
---
|
||||||
|
.travis.yml | 1 +
|
||||||
|
README.md | 1 +
|
||||||
|
test/TEST-60-IFCFG/test.sh | 2 +-
|
||||||
|
3 files changed, 3 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/.travis.yml b/.travis.yml
|
||||||
|
index 364078cf..37002e9a 100644
|
||||||
|
--- a/.travis.yml
|
||||||
|
+++ b/.travis.yml
|
||||||
|
@@ -11,6 +11,7 @@ env:
|
||||||
|
- IMAGE=latest TESTS=50
|
||||||
|
- IMAGE=latest TESTS=30
|
||||||
|
- IMAGE=latest TESTS=31
|
||||||
|
+ - IMAGE=latest TESTS=60
|
||||||
|
- IMAGE=latest TESTS=70
|
||||||
|
- IMAGE=latest TESTS=99
|
||||||
|
- IMAGE=latest TESTS=02
|
||||||
|
diff --git a/README.md b/README.md
|
||||||
|
index 36ae7e1b..530f1c1b 100644
|
||||||
|
--- a/README.md
|
||||||
|
+++ b/README.md
|
||||||
|
@@ -27,4 +27,5 @@ dracut is an initramfs infrastructure.
|
||||||
|
- Test 31: [![Test 31](https://ci.centos.org/job/dracut-matrix-master/TESTS=31,label=dracut-ci-slave01/badge/icon)](https://ci.centos.org/job/dracut-matrix-master/TESTS=31,label=dracut-ci-slave01/)
|
||||||
|
- Test 40: [![Test 40](https://ci.centos.org/job/dracut-matrix-master/TESTS=40,label=dracut-ci-slave01/badge/icon)](https://ci.centos.org/job/dracut-matrix-master/TESTS=40,label=dracut-ci-slave01/)
|
||||||
|
- Test 50: [![Test 50](https://ci.centos.org/job/dracut-matrix-master/TESTS=50,label=dracut-ci-slave01/badge/icon)](https://ci.centos.org/job/dracut-matrix-master/TESTS=50,label=dracut-ci-slave01/)
|
||||||
|
+- Test 60: [![Test 60](https://ci.centos.org/job/dracut-matrix-master/TESTS=60,label=dracut-ci-slave01/badge/icon)](https://ci.centos.org/job/dracut-matrix-master/TESTS=60,label=dracut-ci-slave01/)
|
||||||
|
- Test 70: [![Test 70](https://ci.centos.org/job/dracut-matrix-master/TESTS=70,label=dracut-ci-slave01/badge/icon)](https://ci.centos.org/job/dracut-matrix-master/TESTS=70,label=dracut-ci-slave01/)
|
||||||
|
diff --git a/test/TEST-60-IFCFG/test.sh b/test/TEST-60-IFCFG/test.sh
|
||||||
|
index 8c11a7d3..8e8bd982 100755
|
||||||
|
--- a/test/TEST-60-IFCFG/test.sh
|
||||||
|
+++ b/test/TEST-60-IFCFG/test.sh
|
||||||
|
@@ -316,7 +316,7 @@ test_setup() {
|
||||||
|
$basedir/dracut.sh -l -i "$TESTDIR"/overlay / \
|
||||||
|
--no-early-microcode \
|
||||||
|
-o "plymouth" \
|
||||||
|
- -a "debug" \
|
||||||
|
+ -a "debug network-legacy" \
|
||||||
|
-d "ipvlan macvlan af_packet piix sd_mod sr_mod ata_piix ide-gd_mod e1000 nfsv2 nfsv3 nfsv4 nfs_acl nfs_layout_nfsv41_files sunrpc i6300esb ib700wdt" \
|
||||||
|
--no-hostonly-cmdline -N \
|
||||||
|
-f "$TESTDIR"/initramfs.testing "$KVERSION" || return 1
|
||||||
|
|
83
SOURCES/0045.patch
Normal file
83
SOURCES/0045.patch
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
From 15ff303dde65e97ba224a9f2cc6275cbaafee52c Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||||
|
Date: Mon, 10 Jun 2019 16:05:23 +0200
|
||||||
|
Subject: [PATCH] test/BONDBRIDGETEAMVLAN: don't assert against ifcfg files
|
||||||
|
|
||||||
|
The network-manager module writes keyfiles instead of ifcfg files. Just
|
||||||
|
check whether the configuration got actually applied correctly.
|
||||||
|
|
||||||
|
(cherry picked from commit 9dfd73bcbd899d8da4bc680fa8b3326c47b939bd)
|
||||||
|
---
|
||||||
|
test/TEST-70-BONDBRIDGETEAMVLAN/client-init.sh | 6 +-----
|
||||||
|
test/TEST-70-BONDBRIDGETEAMVLAN/test.sh | 12 ++++++------
|
||||||
|
2 files changed, 7 insertions(+), 11 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/test/TEST-70-BONDBRIDGETEAMVLAN/client-init.sh b/test/TEST-70-BONDBRIDGETEAMVLAN/client-init.sh
|
||||||
|
index 8c33ff0f..083e0f59 100755
|
||||||
|
--- a/test/TEST-70-BONDBRIDGETEAMVLAN/client-init.sh
|
||||||
|
+++ b/test/TEST-70-BONDBRIDGETEAMVLAN/client-init.sh
|
||||||
|
@@ -10,11 +10,7 @@ echo "made it to the rootfs! Powering down."
|
||||||
|
|
||||||
|
(
|
||||||
|
echo OK
|
||||||
|
- ip -o -4 address show scope global | while read n if rest; do echo $if;done | sort
|
||||||
|
- for i in /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-*; do
|
||||||
|
- echo $i
|
||||||
|
- grep -v 'UUID=' $i
|
||||||
|
- done
|
||||||
|
+ ip -o -4 address show scope global |sed -n 's/^[^:]*: \([^ ]*\) *\(.*\) scope.*/\1 \2/p' |sort
|
||||||
|
echo EOF
|
||||||
|
) > /dev/sda
|
||||||
|
|
||||||
|
diff --git a/test/TEST-70-BONDBRIDGETEAMVLAN/test.sh b/test/TEST-70-BONDBRIDGETEAMVLAN/test.sh
|
||||||
|
index 5618baee..b6dd080c 100755
|
||||||
|
--- a/test/TEST-70-BONDBRIDGETEAMVLAN/test.sh
|
||||||
|
+++ b/test/TEST-70-BONDBRIDGETEAMVLAN/test.sh
|
||||||
|
@@ -112,8 +112,8 @@ client_test() {
|
||||||
|
done
|
||||||
|
} < "$TESTDIR"/client.img || return 1
|
||||||
|
|
||||||
|
- if [[ "$check" != "$CONF" ]]; then
|
||||||
|
- echo "Expected: '$check'"
|
||||||
|
+ if [[ ! "$CONF" =~ ^$check$ ]]; then
|
||||||
|
+ echo "Expected: /^$check\$/"
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo "Got: '$CONF'"
|
||||||
|
@@ -150,7 +150,7 @@ ip=192.168.57.104::192.168.57.1:24:test:ens5.0004:none
|
||||||
|
rd.neednet=1
|
||||||
|
root=nfs:192.168.50.1:/nfs/client bootdev=ens3
|
||||||
|
" \
|
||||||
|
- 'ens3 ens5.0004 ens5.3 vlan0001 vlan2 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens3 # Generated by dracut initrd NAME="ens3" DEVICE="ens3" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp TYPE=Ethernet /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens5.0004 # Generated by dracut initrd NAME="ens5.0004" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.57.104" PREFIX="24" GATEWAY="192.168.57.1" TYPE=Vlan DEVICE="ens5.0004" VLAN=yes PHYSDEV="ens5" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens5.3 # Generated by dracut initrd NAME="ens5.3" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.56.103" PREFIX="24" GATEWAY="192.168.56.1" TYPE=Vlan DEVICE="ens5.3" VLAN=yes PHYSDEV="ens5" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-vlan0001 # Generated by dracut initrd NAME="vlan0001" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.54.101" PREFIX="24" GATEWAY="192.168.54.1" TYPE=Vlan DEVICE="vlan0001" VLAN=yes PHYSDEV="ens5" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-vlan2 # Generated by dracut initrd NAME="vlan2" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.55.102" PREFIX="24" GATEWAY="192.168.55.1" TYPE=Vlan DEVICE="vlan2" VLAN=yes PHYSDEV="ens5" EOF ' \
|
||||||
|
+ 'ens3 inet 192\.168\.50\.[0-9]*/24 brd 192\.168\.50\.255 ens5\.0004 inet 192\.168\.57\.104/24 brd 192\.168\.57\.255 ens5\.3 inet 192\.168\.56\.103/24 brd 192\.168\.56\.255 vlan0001 inet 192\.168\.54\.101/24 brd 192\.168\.54\.255 vlan2 inet 192\.168\.55\.102/24 brd 192\.168\.55\.255 EOF ' \
|
||||||
|
|| return 1
|
||||||
|
|
||||||
|
client_test "Multiple Bonds" \
|
||||||
|
@@ -163,7 +163,7 @@ ip=bond1:dhcp
|
||||||
|
rd.neednet=1
|
||||||
|
root=nfs:192.168.50.1:/nfs/client bootdev=bond0
|
||||||
|
" \
|
||||||
|
- 'bond0 bond1 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-bond0 # Generated by dracut initrd NAME="bond0" DEVICE="bond0" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp BONDING_OPTS="" NAME="bond0" TYPE=Bond /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-bond1 # Generated by dracut initrd NAME="bond1" DEVICE="bond1" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp BONDING_OPTS="" NAME="bond1" TYPE=Bond /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens4 # Generated by dracut initrd NAME="ens4" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond0" DEVICE="ens4" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens5 # Generated by dracut initrd NAME="ens5" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond0" DEVICE="ens5" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens6 # Generated by dracut initrd NAME="ens6" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond1" DEVICE="ens6" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens7 # Generated by dracut initrd NAME="ens7" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond1" DEVICE="ens7" EOF ' \
|
||||||
|
+ 'bond0 inet 192\.168\.50\.[0-9]*/24 brd 192\.168\.50\.255 bond1 inet 192\.168\.51\.[0-9]*/24 brd 192\.168\.51\.255 EOF ' \
|
||||||
|
|| return 1
|
||||||
|
|
||||||
|
client_test "Multiple Bridges" \
|
||||||
|
@@ -176,7 +176,7 @@ ip=br1:dhcp
|
||||||
|
rd.neednet=1
|
||||||
|
root=nfs:192.168.50.1:/nfs/client bootdev=br0
|
||||||
|
" \
|
||||||
|
- 'br0 br1 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-br0 # Generated by dracut initrd NAME="br0" DEVICE="br0" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp TYPE=Bridge NAME="br0" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-br1 # Generated by dracut initrd NAME="br1" DEVICE="br1" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp TYPE=Bridge NAME="br1" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens4 # Generated by dracut initrd NAME="ens4" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br0" DEVICE="ens4" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens5 # Generated by dracut initrd NAME="ens5" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br0" DEVICE="ens5" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens6 # Generated by dracut initrd NAME="ens6" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br1" DEVICE="ens6" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens7 # Generated by dracut initrd NAME="ens7" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br1" DEVICE="ens7" EOF ' \
|
||||||
|
+ 'br0 inet 192\.168\.50\.[0-9]*/24 brd 192\.168\.50\.255 br1 inet 192\.168\.51\.[0-9]*/24 brd 192\.168\.51\.255 EOF ' \
|
||||||
|
|| return 1
|
||||||
|
|
||||||
|
kill_server
|
||||||
|
@@ -260,7 +260,7 @@ test_setup() {
|
||||||
|
export initdir="$TESTDIR"/mnt/nfs/client
|
||||||
|
. "$basedir"/dracut-init.sh
|
||||||
|
inst_multiple sh shutdown poweroff stty cat ps ln ip \
|
||||||
|
- mount dmesg mkdir cp ping grep ls sort
|
||||||
|
+ mount dmesg mkdir cp ping grep ls sort sed
|
||||||
|
for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do
|
||||||
|
[[ -f ${_terminfodir}/l/linux ]] && break
|
||||||
|
done
|
||||||
|
|
37
SOURCES/0046.patch
Normal file
37
SOURCES/0046.patch
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
From 96976e84e2c8544ab32026f05da8a35b9c48b2e5 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||||
|
Date: Mon, 10 Jun 2019 16:05:49 +0200
|
||||||
|
Subject: [PATCH] test/MULTINIC: correctly note activated devices when using
|
||||||
|
network-manager
|
||||||
|
|
||||||
|
The .did-setup files are not there. What is there is the NetworkManager
|
||||||
|
connection files.
|
||||||
|
|
||||||
|
(cherry picked from commit 393fb1ac05ec3386a07d885e99985a647634803e)
|
||||||
|
---
|
||||||
|
test/TEST-50-MULTINIC/client-init.sh | 10 ++++++++++
|
||||||
|
1 file changed, 10 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/test/TEST-50-MULTINIC/client-init.sh b/test/TEST-50-MULTINIC/client-init.sh
|
||||||
|
index 529379f0..7099dcf3 100755
|
||||||
|
--- a/test/TEST-50-MULTINIC/client-init.sh
|
||||||
|
+++ b/test/TEST-50-MULTINIC/client-init.sh
|
||||||
|
@@ -105,7 +105,17 @@ export TERM=linux
|
||||||
|
export PS1='initramfs-test:\w\$ '
|
||||||
|
stty sane
|
||||||
|
echo "made it to the rootfs! Powering down."
|
||||||
|
+for i in /sys/class/net/*/
|
||||||
|
+do
|
||||||
|
+ # booting with network-manager module
|
||||||
|
+ state=/run/NetworkManager/devices/$(cat $i/ifindex)
|
||||||
|
+ grep -q connection-uuid= $state 2>/dev/null || continue
|
||||||
|
+ i=${i##*/}
|
||||||
|
+ ip link show $i |grep -q master && continue
|
||||||
|
+ IFACES+="$i "
|
||||||
|
+done
|
||||||
|
for i in /run/initramfs/net.*.did-setup; do
|
||||||
|
+ # booting with network-legacy module
|
||||||
|
[ -f "$i" ] || continue
|
||||||
|
strglobin "$i" ":*:*:*:*:" && continue
|
||||||
|
i=${i%.did-setup}
|
||||||
|
|
115
SOURCES/0047.patch
Normal file
115
SOURCES/0047.patch
Normal file
@ -0,0 +1,115 @@
|
|||||||
|
From 08961eef2ad09e4ce38ee034baf4e8c2b3934cd1 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Benjamin Marzinski <bmarzins@redhat.com>
|
||||||
|
Date: Tue, 3 Sep 2019 10:44:36 -0500
|
||||||
|
Subject: [PATCH] modules.d: fix udev rules detection of multipath devices
|
||||||
|
|
||||||
|
Starting with the 0.7.7 release of the multipath tools, the multipath
|
||||||
|
udev rules always set a value in ENV{DM_MULTIPATH_DEVICE_PATH} for any
|
||||||
|
device that multipath scans. A value of 0 means that the device is not
|
||||||
|
claimed by multipath, and a value of 1 means that it is. Because of
|
||||||
|
this, udev rules that check ENV{DM_MULTIPATH_DEVICE_PATH}=="?*" will
|
||||||
|
always return True, and act as if every scanned device is claimed by
|
||||||
|
multipath. Checking ENV{DM_MULTIPATH_DEVICE_PATH}=="1" will work
|
||||||
|
correctly for both the old and new versions of the multipath tools.
|
||||||
|
---
|
||||||
|
modules.d/90dm/59-persistent-storage-dm.rules | 2 +-
|
||||||
|
modules.d/90dmraid/61-dmraid-imsm.rules | 2 +-
|
||||||
|
modules.d/90lvm/64-lvm.rules | 2 +-
|
||||||
|
modules.d/90mdraid/59-persistent-storage-md.rules | 2 +-
|
||||||
|
modules.d/90mdraid/65-md-incremental-imsm.rules | 2 +-
|
||||||
|
modules.d/95udev-rules/59-persistent-storage.rules | 2 +-
|
||||||
|
modules.d/95udev-rules/61-persistent-storage.rules | 2 +-
|
||||||
|
7 files changed, 7 insertions(+), 7 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/90dm/59-persistent-storage-dm.rules b/modules.d/90dm/59-persistent-storage-dm.rules
|
||||||
|
index 73b09376..2be11227 100644
|
||||||
|
--- a/modules.d/90dm/59-persistent-storage-dm.rules
|
||||||
|
+++ b/modules.d/90dm/59-persistent-storage-dm.rules
|
||||||
|
@@ -1,7 +1,7 @@
|
||||||
|
SUBSYSTEM!="block", GOTO="dm_end"
|
||||||
|
ACTION!="add|change", GOTO="dm_end"
|
||||||
|
# Also don't process disks that are slated to be a multipath device
|
||||||
|
-ENV{DM_MULTIPATH_DEVICE_PATH}=="?*", GOTO="dm_end"
|
||||||
|
+ENV{DM_MULTIPATH_DEVICE_PATH}=="1", GOTO="dm_end"
|
||||||
|
|
||||||
|
KERNEL!="dm-[0-9]*", GOTO="dm_end"
|
||||||
|
ACTION=="add", GOTO="dm_end"
|
||||||
|
diff --git a/modules.d/90dmraid/61-dmraid-imsm.rules b/modules.d/90dmraid/61-dmraid-imsm.rules
|
||||||
|
index 72267d3c..8a6b215e 100644
|
||||||
|
--- a/modules.d/90dmraid/61-dmraid-imsm.rules
|
||||||
|
+++ b/modules.d/90dmraid/61-dmraid-imsm.rules
|
||||||
|
@@ -5,7 +5,7 @@
|
||||||
|
SUBSYSTEM!="block", GOTO="dm_end"
|
||||||
|
ACTION!="add|change", GOTO="dm_end"
|
||||||
|
# Also don't process disks that are slated to be a multipath device
|
||||||
|
-ENV{DM_MULTIPATH_DEVICE_PATH}=="?*", GOTO="dm_end"
|
||||||
|
+ENV{DM_MULTIPATH_DEVICE_PATH}=="1", GOTO="dm_end"
|
||||||
|
|
||||||
|
ENV{ID_FS_TYPE}=="linux_raid_member", GOTO="dm_end"
|
||||||
|
|
||||||
|
diff --git a/modules.d/90lvm/64-lvm.rules b/modules.d/90lvm/64-lvm.rules
|
||||||
|
index 3ce0c1f6..65f65249 100644
|
||||||
|
--- a/modules.d/90lvm/64-lvm.rules
|
||||||
|
+++ b/modules.d/90lvm/64-lvm.rules
|
||||||
|
@@ -7,7 +7,7 @@
|
||||||
|
SUBSYSTEM!="block", GOTO="lvm_end"
|
||||||
|
ACTION!="add|change", GOTO="lvm_end"
|
||||||
|
# Also don't process disks that are slated to be a multipath device
|
||||||
|
-ENV{DM_MULTIPATH_DEVICE_PATH}=="?*", GOTO="lvm_end"
|
||||||
|
+ENV{DM_MULTIPATH_DEVICE_PATH}=="1", GOTO="lvm_end"
|
||||||
|
KERNEL=="dm-[0-9]*", ACTION=="add", GOTO="lvm_end"
|
||||||
|
ENV{ID_FS_TYPE}!="LVM?_member", GOTO="lvm_end"
|
||||||
|
|
||||||
|
diff --git a/modules.d/90mdraid/59-persistent-storage-md.rules b/modules.d/90mdraid/59-persistent-storage-md.rules
|
||||||
|
index 6ef858aa..96b10108 100644
|
||||||
|
--- a/modules.d/90mdraid/59-persistent-storage-md.rules
|
||||||
|
+++ b/modules.d/90mdraid/59-persistent-storage-md.rules
|
||||||
|
@@ -1,7 +1,7 @@
|
||||||
|
SUBSYSTEM!="block", GOTO="md_end"
|
||||||
|
ACTION!="add|change", GOTO="md_end"
|
||||||
|
# Also don't process disks that are slated to be a multipath device
|
||||||
|
-ENV{DM_MULTIPATH_DEVICE_PATH}=="?*", GOTO="md_end"
|
||||||
|
+ENV{DM_MULTIPATH_DEVICE_PATH}=="1", GOTO="md_end"
|
||||||
|
|
||||||
|
KERNEL!="md[0-9]*|md_d[0-9]*|md/*", KERNEL!="md*", GOTO="md_end"
|
||||||
|
|
||||||
|
diff --git a/modules.d/90mdraid/65-md-incremental-imsm.rules b/modules.d/90mdraid/65-md-incremental-imsm.rules
|
||||||
|
index d66dd012..52f5b195 100644
|
||||||
|
--- a/modules.d/90mdraid/65-md-incremental-imsm.rules
|
||||||
|
+++ b/modules.d/90mdraid/65-md-incremental-imsm.rules
|
||||||
|
@@ -9,7 +9,7 @@ KERNEL=="md*", ENV{ID_FS_TYPE}!="linux_raid_member", GOTO="md_end"
|
||||||
|
KERNEL=="md*", ACTION!="change", GOTO="md_end"
|
||||||
|
|
||||||
|
# Also don't process disks that are slated to be a multipath device
|
||||||
|
-ENV{DM_MULTIPATH_DEVICE_PATH}=="?*", GOTO="md_end"
|
||||||
|
+ENV{DM_MULTIPATH_DEVICE_PATH}=="1", GOTO="md_end"
|
||||||
|
|
||||||
|
ENV{ID_FS_TYPE}=="ddf_raid_member|isw_raid_member|linux_raid_member", GOTO="md_try"
|
||||||
|
GOTO="md_end"
|
||||||
|
diff --git a/modules.d/95udev-rules/59-persistent-storage.rules b/modules.d/95udev-rules/59-persistent-storage.rules
|
||||||
|
index 47ff6edd..8d8650f7 100644
|
||||||
|
--- a/modules.d/95udev-rules/59-persistent-storage.rules
|
||||||
|
+++ b/modules.d/95udev-rules/59-persistent-storage.rules
|
||||||
|
@@ -1,7 +1,7 @@
|
||||||
|
SUBSYSTEM!="block", GOTO="ps_end"
|
||||||
|
ACTION!="add|change", GOTO="ps_end"
|
||||||
|
# Also don't process disks that are slated to be a multipath device
|
||||||
|
-ENV{DM_MULTIPATH_DEVICE_PATH}=="?*", GOTO="ps_end"
|
||||||
|
+ENV{DM_MULTIPATH_DEVICE_PATH}=="1", GOTO="ps_end"
|
||||||
|
|
||||||
|
KERNEL=="cciss[0-9]*", IMPORT BLKID
|
||||||
|
KERNEL=="nbd[0-9]*", IMPORT BLKID
|
||||||
|
diff --git a/modules.d/95udev-rules/61-persistent-storage.rules b/modules.d/95udev-rules/61-persistent-storage.rules
|
||||||
|
index 37148b07..895ecebd 100644
|
||||||
|
--- a/modules.d/95udev-rules/61-persistent-storage.rules
|
||||||
|
+++ b/modules.d/95udev-rules/61-persistent-storage.rules
|
||||||
|
@@ -1,7 +1,7 @@
|
||||||
|
SUBSYSTEM!="block", GOTO="pss_end"
|
||||||
|
ACTION!="add|change", GOTO="pss_end"
|
||||||
|
# Also don't process disks that are slated to be a multipath device
|
||||||
|
-ENV{DM_MULTIPATH_DEVICE_PATH}=="?*", GOTO="pss_end"
|
||||||
|
+ENV{DM_MULTIPATH_DEVICE_PATH}=="1", GOTO="pss_end"
|
||||||
|
|
||||||
|
ACTION=="change", KERNEL=="dm-[0-9]*", ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}!="1", GOTO="do_pss"
|
||||||
|
KERNEL=="cciss[0-9]*", GOTO="do_pss"
|
||||||
|
|
43
SOURCES/0048.patch
Normal file
43
SOURCES/0048.patch
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
From b59ae228851713f645751742136e34b854b0712a Mon Sep 17 00:00:00 2001
|
||||||
|
From: Harald Hoyer <harald@redhat.com>
|
||||||
|
Date: Thu, 10 Nov 2016 13:57:26 +0100
|
||||||
|
Subject: [PATCH] test/test-rpms.txt: add list of rpms to install
|
||||||
|
|
||||||
|
(cherry picked from commit f432d367fc4fa7558761cb9bb4229e6c027bfa31)
|
||||||
|
---
|
||||||
|
test/test-rpms.txt | 26 ++++++++++++++++++++++++++
|
||||||
|
1 file changed, 26 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/test/test-rpms.txt b/test/test-rpms.txt
|
||||||
|
new file mode 100644
|
||||||
|
index 00000000..1723d8e9
|
||||||
|
--- /dev/null
|
||||||
|
+++ b/test/test-rpms.txt
|
||||||
|
@@ -0,0 +1,26 @@
|
||||||
|
+dash
|
||||||
|
+bridge-utils
|
||||||
|
+asciidoc
|
||||||
|
+mdadm
|
||||||
|
+lvm2
|
||||||
|
+dmraid
|
||||||
|
+cryptsetup
|
||||||
|
+nfs-utils
|
||||||
|
+nbd
|
||||||
|
+dhcp-server
|
||||||
|
+scsi-target-utils
|
||||||
|
+iscsi-initiator-utils
|
||||||
|
+net-tools
|
||||||
|
+strace
|
||||||
|
+syslinux
|
||||||
|
+python-imgcreate
|
||||||
|
+genisoimage
|
||||||
|
+btrfs-progs
|
||||||
|
+bridge-utils
|
||||||
|
+kmod-devel
|
||||||
|
+gcc
|
||||||
|
+bzip2
|
||||||
|
+xz
|
||||||
|
+tar
|
||||||
|
+wget
|
||||||
|
+rpm-build
|
||||||
|
|
23
SOURCES/0049.patch
Normal file
23
SOURCES/0049.patch
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
From 4ef5cdc120bdbb348345c964a19affbb3ca1fa32 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Harald Hoyer <harald@redhat.com>
|
||||||
|
Date: Fri, 11 Nov 2016 11:40:58 +0100
|
||||||
|
Subject: [PATCH] test/test-rpms.txt: add gzip
|
||||||
|
|
||||||
|
(cherry picked from commit 7b4173d698be5163da1e5b5b52bafd2facba4db5)
|
||||||
|
---
|
||||||
|
test/test-rpms.txt | 1 +
|
||||||
|
1 file changed, 1 insertion(+)
|
||||||
|
|
||||||
|
diff --git a/test/test-rpms.txt b/test/test-rpms.txt
|
||||||
|
index 1723d8e9..10596da7 100644
|
||||||
|
--- a/test/test-rpms.txt
|
||||||
|
+++ b/test/test-rpms.txt
|
||||||
|
@@ -19,6 +19,7 @@ btrfs-progs
|
||||||
|
bridge-utils
|
||||||
|
kmod-devel
|
||||||
|
gcc
|
||||||
|
+gzip
|
||||||
|
bzip2
|
||||||
|
xz
|
||||||
|
tar
|
||||||
|
|
23
SOURCES/0050.patch
Normal file
23
SOURCES/0050.patch
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
From fe44aa1b14f427245bdfb2026f2211a19b52f5e3 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Harald Hoyer <harald@redhat.com>
|
||||||
|
Date: Fri, 11 Nov 2016 12:34:00 +0100
|
||||||
|
Subject: [PATCH] test-rpms.txt: add dhcp
|
||||||
|
|
||||||
|
(cherry picked from commit a081e072d894c91fcf037e267cb6793c4b0356c4)
|
||||||
|
---
|
||||||
|
test/test-rpms.txt | 1 +
|
||||||
|
1 file changed, 1 insertion(+)
|
||||||
|
|
||||||
|
diff --git a/test/test-rpms.txt b/test/test-rpms.txt
|
||||||
|
index 10596da7..95376bd2 100644
|
||||||
|
--- a/test/test-rpms.txt
|
||||||
|
+++ b/test/test-rpms.txt
|
||||||
|
@@ -8,6 +8,7 @@ cryptsetup
|
||||||
|
nfs-utils
|
||||||
|
nbd
|
||||||
|
dhcp-server
|
||||||
|
+dhcp
|
||||||
|
scsi-target-utils
|
||||||
|
iscsi-initiator-utils
|
||||||
|
net-tools
|
||||||
|
|
19
SOURCES/0051.patch
Normal file
19
SOURCES/0051.patch
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
From 81babdedec8c6f7b23bbf0e3418126c4f9e5e15f Mon Sep 17 00:00:00 2001
|
||||||
|
From: Frantisek Sumsal <frantisek@sumsal.cz>
|
||||||
|
Date: Tue, 10 Sep 2019 16:46:55 +0200
|
||||||
|
Subject: [PATCH] test-rpms.txt: add util-linux into the dependency list
|
||||||
|
|
||||||
|
---
|
||||||
|
test/test-rpms.txt | 1 +
|
||||||
|
1 file changed, 1 insertion(+)
|
||||||
|
|
||||||
|
diff --git a/test/test-rpms.txt b/test/test-rpms.txt
|
||||||
|
index 95376bd2..02577c8a 100644
|
||||||
|
--- a/test/test-rpms.txt
|
||||||
|
+++ b/test/test-rpms.txt
|
||||||
|
@@ -26,3 +26,4 @@ xz
|
||||||
|
tar
|
||||||
|
wget
|
||||||
|
rpm-build
|
||||||
|
+util-linux
|
||||||
|
|
33
SOURCES/0052.patch
Normal file
33
SOURCES/0052.patch
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
From 7843bc52777683f6a4ef953d8dde7171ff3b911c Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||||
|
Date: Wed, 24 Jul 2019 16:45:19 +0200
|
||||||
|
Subject: [PATCH] [RHEL] network: default to network-legacy even in presence of
|
||||||
|
nm-initrd-generator
|
||||||
|
|
||||||
|
In RHEL 8.2, NetworkManager will ship with the nm-initrd-generator, but
|
||||||
|
before the install bits fall into place we want to default to network-legacy.
|
||||||
|
|
||||||
|
This unblocks the enablement of the NetworkManager bits and is intended
|
||||||
|
to be reverted later on.
|
||||||
|
---
|
||||||
|
modules.d/40network/module-setup.sh | 6 +++---
|
||||||
|
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/40network/module-setup.sh b/modules.d/40network/module-setup.sh
|
||||||
|
index 8e2a74a3..bf252eb7 100755
|
||||||
|
--- a/modules.d/40network/module-setup.sh
|
||||||
|
+++ b/modules.d/40network/module-setup.sh
|
||||||
|
@@ -8,9 +8,9 @@ check() {
|
||||||
|
# called by dracut
|
||||||
|
depends() {
|
||||||
|
echo -n "kernel-network-modules "
|
||||||
|
- if ! dracut_module_included "network-legacy" && [ -x "/usr/libexec/nm-initrd-generator" ] ; then
|
||||||
|
- echo "network-manager"
|
||||||
|
- else
|
||||||
|
+ # RHEL 8.1: Default to network-legacy unless the user chose
|
||||||
|
+ # network-manager manually
|
||||||
|
+ if ! dracut_module_included "network-manager" ; then
|
||||||
|
echo "network-legacy"
|
||||||
|
fi
|
||||||
|
return 0
|
||||||
|
|
32
SOURCES/0053.patch
Normal file
32
SOURCES/0053.patch
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
From dcbc74b01bfb360eecadb8e59480472b86fe63d0 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jonathan Lebon <jonathan@jlebon.com>
|
||||||
|
Date: Tue, 29 Oct 2019 09:35:41 -0400
|
||||||
|
Subject: [PATCH] 01fips: fix HMAC file path resolution
|
||||||
|
|
||||||
|
There is a small regression in #343: when handling the 'separate boot
|
||||||
|
partition' case, we're checking for the kernel image in the wrong
|
||||||
|
location: `BOOT_IMAGE` is the `/boot`-relative path to the kernel image,
|
||||||
|
so `/boot/${BOOT_IMAGE_PATH}/${BOOT_IMAGE}` expands to e.g.
|
||||||
|
`/boot/mysubdir1/mysubdir2/mysubdir1/mysubdir2/vmlinuz...`.
|
||||||
|
|
||||||
|
We should be using `BOOT_IMAGE_NAME` here instead (and in fact, the next
|
||||||
|
if-statement does this correctly, so it might've just been accidentally
|
||||||
|
left out of #343).
|
||||||
|
---
|
||||||
|
modules.d/01fips/fips.sh | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/01fips/fips.sh b/modules.d/01fips/fips.sh
|
||||||
|
index beaa692b..c3dbcf74 100755
|
||||||
|
--- a/modules.d/01fips/fips.sh
|
||||||
|
+++ b/modules.d/01fips/fips.sh
|
||||||
|
@@ -118,7 +118,7 @@ do_fips()
|
||||||
|
|
||||||
|
if [ -z "$BOOT_IMAGE_NAME" ]; then
|
||||||
|
BOOT_IMAGE_NAME="vmlinuz-${KERNEL}"
|
||||||
|
- elif ! [ -e "/boot/${BOOT_IMAGE_PATH}/${BOOT_IMAGE}" ]; then
|
||||||
|
+ elif ! [ -e "/boot/${BOOT_IMAGE_PATH}/${BOOT_IMAGE_NAME}" ]; then
|
||||||
|
#if /boot is not a separate partition BOOT_IMAGE might start with /boot
|
||||||
|
BOOT_IMAGE_PATH=${BOOT_IMAGE_PATH#"/boot"}
|
||||||
|
#on some achitectures BOOT_IMAGE does not contain path to kernel
|
||||||
|
|
33
SOURCES/0054.patch
Normal file
33
SOURCES/0054.patch
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
From 14310ca42f06c2156ab5cefd05dbaa47ae3b054d Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jonathan Lebon <jonathan@jlebon.com>
|
||||||
|
Date: Tue, 29 Oct 2019 16:47:34 -0400
|
||||||
|
Subject: [PATCH] 01fips: run sha512hmac from directory HMAC file directory
|
||||||
|
|
||||||
|
That way, the HMAC file can contain a relative path instead of an
|
||||||
|
absolute one. The issue is that right now the kernel RPM bakes the
|
||||||
|
`/boot/vmlinuz-${kver}` path into the HMAC file which poses an issue for
|
||||||
|
rpm-ostree systems (and any other system where the kernel isn't simply
|
||||||
|
in the top-level `/boot`.
|
||||||
|
|
||||||
|
For now, we're hacking around this in rpm-ostree:
|
||||||
|
https://github.com/coreos/rpm-ostree/pull/1934
|
||||||
|
|
||||||
|
Though I'd like to propose the same change in the kernel spec file.
|
||||||
|
---
|
||||||
|
modules.d/01fips/fips.sh | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/01fips/fips.sh b/modules.d/01fips/fips.sh
|
||||||
|
index c3dbcf74..893143d0 100755
|
||||||
|
--- a/modules.d/01fips/fips.sh
|
||||||
|
+++ b/modules.d/01fips/fips.sh
|
||||||
|
@@ -135,7 +135,7 @@ do_fips()
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
- sha512hmac -c "${BOOT_IMAGE_HMAC}" || return 1
|
||||||
|
+ (cd "${BOOT_IMAGE_HMAC%/*}" && sha512hmac -c "${BOOT_IMAGE_HMAC}") || return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
info "All initrd crypto checks done"
|
||||||
|
|
26
SOURCES/0055.patch
Normal file
26
SOURCES/0055.patch
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
From 89dcbbe92f008f6c4ebccfedf09d32bab4a575e5 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jonathan Lebon <jonathan@jlebon.com>
|
||||||
|
Date: Tue, 29 Oct 2019 16:53:00 -0400
|
||||||
|
Subject: [PATCH] 01fips: add / in BOOT_IMAGE_HMAC filename for clarity
|
||||||
|
|
||||||
|
It's already the case the `BOOT_IMAGE_PATH` today, in the non-empty
|
||||||
|
case, includes a trailing `/`, but let's add it to the path we build
|
||||||
|
here too to make it more obvious.
|
||||||
|
---
|
||||||
|
modules.d/01fips/fips.sh | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/01fips/fips.sh b/modules.d/01fips/fips.sh
|
||||||
|
index 893143d0..de2755b0 100755
|
||||||
|
--- a/modules.d/01fips/fips.sh
|
||||||
|
+++ b/modules.d/01fips/fips.sh
|
||||||
|
@@ -129,7 +129,7 @@ do_fips()
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
- BOOT_IMAGE_HMAC="/boot/${BOOT_IMAGE_PATH}.${BOOT_IMAGE_NAME}.hmac"
|
||||||
|
+ BOOT_IMAGE_HMAC="/boot/${BOOT_IMAGE_PATH}/.${BOOT_IMAGE_NAME}.hmac"
|
||||||
|
if ! [ -e "${BOOT_IMAGE_HMAC}" ]; then
|
||||||
|
warn "${BOOT_IMAGE_HMAC} does not exist"
|
||||||
|
return 1
|
||||||
|
|
34
SOURCES/0056.patch
Normal file
34
SOURCES/0056.patch
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
From 9e8f172dc01f7e013bb5d302ef6c90e2dc6b30c8 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Jonathan Lebon <jonathan@jlebon.com>
|
||||||
|
Date: Tue, 29 Oct 2019 16:54:10 -0400
|
||||||
|
Subject: [PATCH] 01fips: trim off GRUB boot device from BOOT_IMAGE
|
||||||
|
|
||||||
|
E.g. in RHCOS, the `BOOT_IMAGE` from the cmdline is:
|
||||||
|
|
||||||
|
(hd0,gpt1)/ostree/rhcos-e493371e5ee8407889029ec979955a2b86fd7e3cae5a0591b9db1cd248d966e8/vmlinuz-4.18.0-146.el8.x86_64
|
||||||
|
|
||||||
|
Which of course is a GRUB thing, not an actual pathname we'll be able to
|
||||||
|
resolve. In fact, we can simply scrap it off from the variable. Our code
|
||||||
|
is already able to handle both cases: whether the device refers to a
|
||||||
|
separate boot partition, or just the root filesystem with a regular
|
||||||
|
`/boot` directory.
|
||||||
|
---
|
||||||
|
modules.d/01fips/fips.sh | 4 ++++
|
||||||
|
1 file changed, 4 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/modules.d/01fips/fips.sh b/modules.d/01fips/fips.sh
|
||||||
|
index de2755b0..559952ca 100755
|
||||||
|
--- a/modules.d/01fips/fips.sh
|
||||||
|
+++ b/modules.d/01fips/fips.sh
|
||||||
|
@@ -113,6 +113,10 @@ do_fips()
|
||||||
|
do_rhevh_check /run/initramfs/live/isolinux/vmlinuz0 || return 1
|
||||||
|
else
|
||||||
|
BOOT_IMAGE="$(getarg BOOT_IMAGE)"
|
||||||
|
+
|
||||||
|
+ # Trim off any leading GRUB boot device (e.g. ($root) )
|
||||||
|
+ BOOT_IMAGE="$(echo "${BOOT_IMAGE}" | sed 's/^(.*)//')"
|
||||||
|
+
|
||||||
|
BOOT_IMAGE_NAME="${BOOT_IMAGE##*/}"
|
||||||
|
BOOT_IMAGE_PATH="${BOOT_IMAGE%${BOOT_IMAGE_NAME}}"
|
||||||
|
|
||||||
|
|
25
SOURCES/0057.patch
Normal file
25
SOURCES/0057.patch
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
From 346e57c1b6af4e2cfdbaae64941f2f3b8454a944 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lukas Nykryn <lnykryn@redhat.com>
|
||||||
|
Date: Fri, 29 Nov 2019 13:29:23 +0100
|
||||||
|
Subject: [PATCH] always include sg module
|
||||||
|
|
||||||
|
RHEL-only
|
||||||
|
Resolves:#1579763
|
||||||
|
---
|
||||||
|
modules.d/00systemd/module-setup.sh | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/00systemd/module-setup.sh b/modules.d/00systemd/module-setup.sh
|
||||||
|
index 1ed4b34f..ed177826 100755
|
||||||
|
--- a/modules.d/00systemd/module-setup.sh
|
||||||
|
+++ b/modules.d/00systemd/module-setup.sh
|
||||||
|
@@ -18,7 +18,7 @@ depends() {
|
||||||
|
}
|
||||||
|
|
||||||
|
installkernel() {
|
||||||
|
- hostonly='' instmods autofs4 ipv6 algif_hash hmac sha256
|
||||||
|
+ hostonly='' instmods autofs4 ipv6 algif_hash hmac sha256 sg
|
||||||
|
instmods -s efivarfs
|
||||||
|
}
|
||||||
|
|
||||||
|
|
44
SOURCES/0058.patch
Normal file
44
SOURCES/0058.patch
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
From 8061a432844d1f780d9b18144def0faef0145c0c Mon Sep 17 00:00:00 2001
|
||||||
|
From: Lukas Nykryn <lnykryn@redhat.com>
|
||||||
|
Date: Mon, 7 Oct 2019 16:48:09 +0200
|
||||||
|
Subject: [PATCH] net-lib: check if addr exists before checking for dad state
|
||||||
|
|
||||||
|
Before we check if dad is done we should first make sure,
|
||||||
|
that there is a link local address where we do the check.
|
||||||
|
|
||||||
|
Due to this issue, on ipv6 only setups sometimes dhclient started
|
||||||
|
asking for ip address, before the link local address was present
|
||||||
|
and failed immediately.
|
||||||
|
|
||||||
|
(cherry picked from commit daa49cc2216d6387541ef36e8427081f6b02f224)
|
||||||
|
|
||||||
|
Resolves: #1765014
|
||||||
|
---
|
||||||
|
modules.d/40network/net-lib.sh | 6 ++++--
|
||||||
|
1 file changed, 4 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/40network/net-lib.sh b/modules.d/40network/net-lib.sh
|
||||||
|
index ad78d225..dcb53804 100755
|
||||||
|
--- a/modules.d/40network/net-lib.sh
|
||||||
|
+++ b/modules.d/40network/net-lib.sh
|
||||||
|
@@ -653,7 +653,8 @@ wait_for_ipv6_dad_link() {
|
||||||
|
timeout=$(($timeout*10))
|
||||||
|
|
||||||
|
while [ $cnt -lt $timeout ]; do
|
||||||
|
- [ -z "$(ip -6 addr show dev "$1" scope link tentative)" ] \
|
||||||
|
+ [ -n "$(ip -6 addr show dev "$1" scope link)" ] \
|
||||||
|
+ && [ -z "$(ip -6 addr show dev "$1" scope link tentative)" ] \
|
||||||
|
&& [ -n "$(ip -6 route list proto ra dev "$1" | grep ^default)" ] \
|
||||||
|
&& return 0
|
||||||
|
[ -n "$(ip -6 addr show dev "$1" scope link dadfailed)" ] \
|
||||||
|
@@ -671,7 +672,8 @@ wait_for_ipv6_dad() {
|
||||||
|
timeout=$(($timeout*10))
|
||||||
|
|
||||||
|
while [ $cnt -lt $timeout ]; do
|
||||||
|
- [ -z "$(ip -6 addr show dev "$1" tentative)" ] \
|
||||||
|
+ [ -n "$(ip -6 addr show dev "$1")" ] \
|
||||||
|
+ && [ -z "$(ip -6 addr show dev "$1" tentative)" ] \
|
||||||
|
&& [ -n "$(ip -6 route list proto ra dev "$1" | grep ^default)" ] \
|
||||||
|
&& return 0
|
||||||
|
[ -n "$(ip -6 addr show dev "$1" dadfailed)" ] \
|
||||||
|
|
57
SOURCES/0059.patch
Normal file
57
SOURCES/0059.patch
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
From 2caaf8b9ba5b95983154bd641f0f493ff1562cc0 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kairui Song <kasong@redhat.com>
|
||||||
|
Date: Tue, 6 Aug 2019 15:39:31 +0800
|
||||||
|
Subject: [PATCH] 99squash: Only start the cleaner on switch-root
|
||||||
|
|
||||||
|
Currently it starts the cleaner early and do the clean up job if switch
|
||||||
|
root is called. It's better to just start the service only on switch
|
||||||
|
root to avoid any risk of service dependency failure and make is
|
||||||
|
simpler.
|
||||||
|
|
||||||
|
Signed-off-by: Kairui Song <kasong@redhat.com>
|
||||||
|
(cherry picked from commit 5d88809319049eb06e3472dcd11cca9c4557d8c2)
|
||||||
|
|
||||||
|
Resolves: #1678248
|
||||||
|
---
|
||||||
|
modules.d/99squash/module-setup.sh | 3 ++-
|
||||||
|
modules.d/99squash/squash-mnt-clear.service | 11 ++++-------
|
||||||
|
2 files changed, 6 insertions(+), 8 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/modules.d/99squash/module-setup.sh b/modules.d/99squash/module-setup.sh
|
||||||
|
index 935fd721..e7e9ed8e 100644
|
||||||
|
--- a/modules.d/99squash/module-setup.sh
|
||||||
|
+++ b/modules.d/99squash/module-setup.sh
|
||||||
|
@@ -25,5 +25,6 @@ install() {
|
||||||
|
inst $moddir/init.sh /squash/init.sh
|
||||||
|
|
||||||
|
inst "$moddir/squash-mnt-clear.service" "$systemdsystemunitdir/squash-mnt-clear.service"
|
||||||
|
- ln_r "$systemdsystemunitdir/squash-mnt-clear.service" "$systemdsystemunitdir/initrd.target.wants/squash-mnt-clear.service"
|
||||||
|
+ mkdir -p "$initdir$systemdsystemunitdir/initrd-switch-root.target.wants"
|
||||||
|
+ ln_r "$systemdsystemunitdir/squash-mnt-clear.service" "$systemdsystemunitdir/initrd-switch-root.target.wants/squash-mnt-clear.service"
|
||||||
|
}
|
||||||
|
diff --git a/modules.d/99squash/squash-mnt-clear.service b/modules.d/99squash/squash-mnt-clear.service
|
||||||
|
index f8d5db46..84441f60 100644
|
||||||
|
--- a/modules.d/99squash/squash-mnt-clear.service
|
||||||
|
+++ b/modules.d/99squash/squash-mnt-clear.service
|
||||||
|
@@ -4,17 +4,14 @@
|
||||||
|
[Unit]
|
||||||
|
Description=Cleanup squashfs mounts when switch root
|
||||||
|
DefaultDependencies=no
|
||||||
|
-After=initrd.target
|
||||||
|
-After=dracut-initqueue.service dracut-pre-pivot.service
|
||||||
|
-Before=initrd-cleanup.service
|
||||||
|
+Before=initrd-switch-root.service
|
||||||
|
+After=initrd-switch-root.target
|
||||||
|
ConditionPathExists=/squash/root
|
||||||
|
-Conflicts=initrd-switch-root.target
|
||||||
|
-IgnoreOnIsolate=true
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=oneshot
|
||||||
|
-RemainAfterExit=yes
|
||||||
|
+RemainAfterExit=no
|
||||||
|
StandardInput=null
|
||||||
|
StandardOutput=syslog+console
|
||||||
|
StandardError=syslog+console
|
||||||
|
-ExecStop=/squash/clear-squash.sh
|
||||||
|
+ExecStart=/squash/clear-squash.sh
|
@ -5,7 +5,7 @@
|
|||||||
# strip the automatically generated dep here and instead co-own the
|
# strip the automatically generated dep here and instead co-own the
|
||||||
# directory.
|
# directory.
|
||||||
%global __requires_exclude pkg-config
|
%global __requires_exclude pkg-config
|
||||||
%define dist_free_release 13.git20190614
|
%define dist_free_release 60.git20191129
|
||||||
|
|
||||||
Name: dracut
|
Name: dracut
|
||||||
Version: 049
|
Version: 049
|
||||||
@ -40,6 +40,53 @@ Patch9: 0009.patch
|
|||||||
Patch10: 0010.patch
|
Patch10: 0010.patch
|
||||||
Patch11: 0011.patch
|
Patch11: 0011.patch
|
||||||
Patch12: 0012.patch
|
Patch12: 0012.patch
|
||||||
|
Patch13: 0013.patch
|
||||||
|
Patch14: 0014.patch
|
||||||
|
Patch15: 0015.patch
|
||||||
|
Patch16: 0016.patch
|
||||||
|
Patch17: 0017.patch
|
||||||
|
Patch18: 0018.patch
|
||||||
|
Patch19: 0019.patch
|
||||||
|
Patch20: 0020.patch
|
||||||
|
Patch21: 0021.patch
|
||||||
|
Patch22: 0022.patch
|
||||||
|
Patch23: 0023.patch
|
||||||
|
Patch24: 0024.patch
|
||||||
|
Patch25: 0025.patch
|
||||||
|
Patch26: 0026.patch
|
||||||
|
Patch27: 0027.patch
|
||||||
|
Patch28: 0028.patch
|
||||||
|
Patch29: 0029.patch
|
||||||
|
Patch30: 0030.patch
|
||||||
|
Patch31: 0031.patch
|
||||||
|
Patch32: 0032.patch
|
||||||
|
Patch33: 0033.patch
|
||||||
|
Patch34: 0034.patch
|
||||||
|
Patch35: 0035.patch
|
||||||
|
Patch36: 0036.patch
|
||||||
|
Patch37: 0037.patch
|
||||||
|
Patch38: 0038.patch
|
||||||
|
Patch39: 0039.patch
|
||||||
|
Patch40: 0040.patch
|
||||||
|
Patch41: 0041.patch
|
||||||
|
Patch42: 0042.patch
|
||||||
|
Patch43: 0043.patch
|
||||||
|
Patch44: 0044.patch
|
||||||
|
Patch45: 0045.patch
|
||||||
|
Patch46: 0046.patch
|
||||||
|
Patch47: 0047.patch
|
||||||
|
Patch48: 0048.patch
|
||||||
|
Patch49: 0049.patch
|
||||||
|
Patch50: 0050.patch
|
||||||
|
Patch51: 0051.patch
|
||||||
|
Patch52: 0052.patch
|
||||||
|
Patch53: 0053.patch
|
||||||
|
Patch54: 0054.patch
|
||||||
|
Patch55: 0055.patch
|
||||||
|
Patch56: 0056.patch
|
||||||
|
Patch57: 0057.patch
|
||||||
|
Patch58: 0058.patch
|
||||||
|
Patch59: 0059.patch
|
||||||
|
|
||||||
Source1: https://www.gnu.org/licenses/lgpl-2.1.txt
|
Source1: https://www.gnu.org/licenses/lgpl-2.1.txt
|
||||||
|
|
||||||
@ -359,6 +406,7 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
|||||||
%{dracutlibdir}/modules.d/03rescue
|
%{dracutlibdir}/modules.d/03rescue
|
||||||
%{dracutlibdir}/modules.d/04watchdog
|
%{dracutlibdir}/modules.d/04watchdog
|
||||||
%{dracutlibdir}/modules.d/05busybox
|
%{dracutlibdir}/modules.d/05busybox
|
||||||
|
%{dracutlibdir}/modules.d/06rngd
|
||||||
%{dracutlibdir}/modules.d/10i18n
|
%{dracutlibdir}/modules.d/10i18n
|
||||||
%{dracutlibdir}/modules.d/30convertfs
|
%{dracutlibdir}/modules.d/30convertfs
|
||||||
%{dracutlibdir}/modules.d/45url-lib
|
%{dracutlibdir}/modules.d/45url-lib
|
||||||
@ -492,6 +540,49 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Nov 29 2019 Lukas Nykryn <lnykryn@redhat.com> - 049-60.git20191129
|
||||||
|
- 99squash: Only start the cleaner on switch-root
|
||||||
|
- net-lib: check if addr exists before checking for dad state
|
||||||
|
- always include sg module
|
||||||
|
|
||||||
|
* Thu Oct 31 2019 Lukas Nykryn <lnykryn@redhat.com> - 049-57.git20191031
|
||||||
|
- various fixes to adapt to RHCOS and FCOS
|
||||||
|
|
||||||
|
* Tue Oct 01 2019 Lukas Nykryn <lnykryn@redhat.com> - 049-53.git20191001
|
||||||
|
- apply patches to allow enablement of nm-initrd-generator
|
||||||
|
|
||||||
|
* Fri Sep 06 2019 Lukas Nykryn <lnykryn@redhat.com> - 049-27.git20190906
|
||||||
|
- modules.d: fix udev rules detection of multipath devices
|
||||||
|
|
||||||
|
* Tue Aug 06 2019 Lukas Nykryn <lnykryn@redhat.com> - 049-26.git20190806
|
||||||
|
- net-lib: fix typo $li -> $_li
|
||||||
|
|
||||||
|
* Tue Aug 06 2019 Lukas Nykryn <lnykryn@redhat.com> - 049-25.git20190806
|
||||||
|
- 90kernel-modules-extra: don't resolve symlinks before instmod
|
||||||
|
|
||||||
|
* Fri Aug 02 2019 Lukas Nykryn <lnykryn@redhat.com> - 049-24.git20190802
|
||||||
|
- 95fcoe: load 'libfcoe' module as a fallback
|
||||||
|
- 99base: enable the initqueue in both 'dracut --add-device' and 'dracut --mount' cases
|
||||||
|
- dracut: let module handling function accept optional path option
|
||||||
|
- squash: also squash systemctl if switch-root is not needed
|
||||||
|
- squash: fix and simplify required_in_root
|
||||||
|
- squash: squash systemd binary and udevadm
|
||||||
|
|
||||||
|
* Thu Jul 25 2019 Lukas Nykryn <lnykryn@redhat.com> - 049-18.git20190725
|
||||||
|
- dracut.spec: add 06rngd
|
||||||
|
|
||||||
|
* Thu Jul 25 2019 Lukas Nykryn <lnykryn@redhat.com> - 049-17.git20190725
|
||||||
|
- rngd: new module running early during boot to help generating entropy when system's default entropy sources are poor (e.g. use of SSD disks or UEFI RNG not available)
|
||||||
|
|
||||||
|
* Tue Jul 16 2019 Lukas Nykryn <lnykryn@redhat.com> - 049-16.git20190716
|
||||||
|
- 01fips: add cfb cipher
|
||||||
|
|
||||||
|
* Mon Jul 08 2019 Lukas Nykryn <lnykryn@redhat.com> - 049-15.git20190708
|
||||||
|
- network: skip already enslaved interfaces
|
||||||
|
|
||||||
|
* Wed Jun 26 2019 Lukas Nykryn <lnykryn@redhat.com> - 049-14.git20190626
|
||||||
|
- fips: ensure fs module for /boot is installed
|
||||||
|
|
||||||
* Fri Jun 14 2019 Lukas Nykryn <lnykryn@redhat.com> - 049-13.git20190614
|
* Fri Jun 14 2019 Lukas Nykryn <lnykryn@redhat.com> - 049-13.git20190614
|
||||||
- fips: split loading the crypto modules and checking the kernel
|
- fips: split loading the crypto modules and checking the kernel
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user