import UBI dracut-049-228.git20230802.el8

This commit is contained in:
eabdullin 2023-11-14 18:57:23 +00:00
parent da33403544
commit 7bed951ac6
12 changed files with 326 additions and 1 deletions

View File

@ -82,3 +82,4 @@ index 8800a49e..71bea53a 100755
inst_simple /etc/system-fips
[ -c ${initdir}/dev/random ] || mknod ${initdir}/dev/random c 1 8 \

View File

@ -31,3 +31,4 @@ index c57fd426..e8952489 100755
done
fi
fi

View File

@ -52,3 +52,4 @@ index 00000000..ce5c883b
+# https://github.com/koalaman/shellcheck/wiki/SC3045
+# ... but dash supports it
+disable=SC3045

View File

@ -35,3 +35,4 @@ index 0d4ef27b..d531bb56 100755
fi
done
# Default: We don't know the interface to use, handle all

View File

@ -29,3 +29,4 @@ index 61752384..94c19545 100755
source_hook initqueue/online $ifname
/sbin/netroot $ifname
done

View File

@ -45,3 +45,4 @@ index 57f51e91..f58559e8 100755
# these options add to the stuff in the config file
(( ${#add_dracutmodules_l[@]} )) && add_dracutmodules+=" ${add_dracutmodules_l[@]} "
(( ${#force_add_dracutmodules_l[@]} )) && force_add_dracutmodules+=" ${force_add_dracutmodules_l[@]} "

56
SOURCES/0223.patch Normal file
View File

@ -0,0 +1,56 @@
From 8525d05be0896f5016e71d501d979ece02373ac1 Mon Sep 17 00:00:00 2001
From: Lev Veyde <lveyde@redhat.com>
Date: Thu, 22 Apr 2021 01:11:55 +0300
Subject: [PATCH] fix(img-lib): ignored null byte in input
The system currently throws numerous nasty warning messages during
the boot, about ignored null bytes in input.
This patch adds a filter to the dd command, to filter these null
bytes out, and thus to prevent these warning messages.
Signed-off-by: Lev Veyde <lveyde@redhat.com>
(Cherry-picked from commit: cf04e49512c244dae5d785869ebfb9c8f4710c7e)
Resolves: rhbz#1952400
---
modules.d/99img-lib/img-lib.sh | 2 +-
modules.d/99img-lib/module-setup.sh | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/modules.d/99img-lib/img-lib.sh b/modules.d/99img-lib/img-lib.sh
index f4774153..ada35ccb 100755
--- a/modules.d/99img-lib/img-lib.sh
+++ b/modules.d/99img-lib/img-lib.sh
@@ -9,7 +9,7 @@
det_archive() {
# NOTE: echo -e works in ash and bash, but not dash
local bz="BZh" xz="$(echo -e '\xfd7zXZ')" gz="$(echo -e '\x1f\x8b')" zs="$(echo -e '\x28\xB5\x2F\xFD')"
- local headerblock="$(dd ${1:+if=$1} bs=262 count=1 2>/dev/null)"
+ local headerblock="$(dd ${1:+if=$1} bs=262 count=1 2>/dev/null | tr -d '\0')"
case "$headerblock" in
$xz*) echo "xz" ;;
$gz*) echo "gzip" ;;
diff --git a/modules.d/99img-lib/module-setup.sh b/modules.d/99img-lib/module-setup.sh
index fe1eca1a..92c1d1dd 100755
--- a/modules.d/99img-lib/module-setup.sh
+++ b/modules.d/99img-lib/module-setup.sh
@@ -3,7 +3,7 @@
# called by dracut
check() {
- require_binaries tar gzip dd bash || return 1
+ require_binaries tar gzip dd bash tr || return 1
return 255
}
@@ -14,7 +14,7 @@ depends() {
# called by dracut
install() {
- inst_multiple tar gzip dd bash
+ inst_multiple tar gzip dd bash tr
# TODO: make this conditional on a cmdline flag / config option
inst_multiple -o cpio xz bzip2 zstd
inst_simple "$moddir/img-lib.sh" "/lib/img-lib.sh"

43
SOURCES/0224.patch Normal file
View File

@ -0,0 +1,43 @@
From 26c332c9881db461e9af75015d8b7d46c877c39f Mon Sep 17 00:00:00 2001
From: Coiby Xu <coxu@redhat.com>
Date: Sun, 24 Apr 2022 10:52:33 +0800
Subject: [PATCH] fix(kernel-network-modules): allow specifying empty
--hostonly-nics
Commit 1e92f728 ("Add a --hostonly-nics option") allows only installing
the network drivers for specified NICs. But it doesn't allow an emtpy
--hostonly-nics. Specifying empty hostonly-nics is needed to address the
following use cases,
- drivers/s390/net is installed regardless of --hostonly-nics. There is
no need to repeat it.
- get_dev_module couldn't find the driver for a bond or a bridge
network interface so it's better for a module to install a bond
or bridge driver itself
- dracut kdump module wants to install the needed network drivers by
itself because it can't add the --hostonly-nics option to dracut when
itself is a dracut module
This patch distinguishes between an empty --hostonly-nics and --hostonly-nics
not added so a user can pass an empty --hostonly-nics option.
(Cherry-picked commit: 3cd4f1a3a793826708976414a33b5f61913f4a5e)
Resolves: #2148318
---
modules.d/90kernel-network-modules/module-setup.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/modules.d/90kernel-network-modules/module-setup.sh b/modules.d/90kernel-network-modules/module-setup.sh
index f36d31f7..851bc31b 100755
--- a/modules.d/90kernel-network-modules/module-setup.sh
+++ b/modules.d/90kernel-network-modules/module-setup.sh
@@ -22,7 +22,7 @@ installkernel() {
dracut_instmods -o -P ".*${_unwanted_drivers}.*" -s "$_net_symbols" "=drivers/s390/net"
fi
- if [[ $hostonly_mode == 'strict' ]] && [[ $hostonly_nics ]]; then
+ if [[ $hostonly_mode == 'strict' ]] && [[ -n ${hostonly_nics+x} ]]; then
for _nic in $hostonly_nics; do
_net_drivers=$(get_dev_module /sys/class/net/$_nic)
if ! [[ $_net_drivers ]]; then

60
SOURCES/0225.patch Normal file
View File

@ -0,0 +1,60 @@
From d3d382cb0192c23abc448bd35b59502820a8b242 Mon Sep 17 00:00:00 2001
From: Pavel Valena <pvalena@redhat.com>
Date: Sun, 23 Jul 2023 19:44:17 +0200
Subject: [PATCH] fix(rngd): install system service file
as there's no reason to keep a copy; there shouldn't be any modifications.
In case there are args stored in a separate file (Fedora and alike),
it needs to be supplied too, but without the option to change the user.
(Cherry-picked commit: c47a44cb25c0892d9af6e66ee9d7cd2c3beca31f)
Resolves: #2181543
---
modules.d/06rngd/module-setup.sh | 9 ++++++++-
modules.d/06rngd/rngd.service | 7 -------
modules.d/06rngd/sysconfig | 1 +
3 files changed, 9 insertions(+), 8 deletions(-)
diff --git a/modules.d/06rngd/module-setup.sh b/modules.d/06rngd/module-setup.sh
index 354bd0bb..7458e5dd 100644
--- a/modules.d/06rngd/module-setup.sh
+++ b/modules.d/06rngd/module-setup.sh
@@ -32,7 +32,14 @@ check() {
install() {
inst rngd
- inst_simple "${moddir}/rngd.service" "${systemdsystemunitdir}/rngd.service"
+ inst_simple "${systemdsystemunitdir}/rngd.service"
+
+ if [ -r /etc/sysconfig/rngd ]; then
+ inst_simple "${moddir}/sysconfig" "/etc/sysconfig/rngd"
+ fi
+
+ # make sure dependant libs are installed too
+ inst_libdir_file opensc-pkcs11.so
systemctl -q --root "$initdir" add-wants sysinit.target rngd.service
}
diff --git a/modules.d/06rngd/rngd.service b/modules.d/06rngd/rngd.service
deleted file mode 100644
index 570fbedb..00000000
--- a/modules.d/06rngd/rngd.service
+++ /dev/null
@@ -1,7 +0,0 @@
-[Unit]
-Description=Hardware RNG Entropy Gatherer Daemon
-DefaultDependencies=no
-Before=systemd-udevd.service
-
-[Service]
-ExecStart=/usr/sbin/rngd -f
diff --git a/modules.d/06rngd/sysconfig b/modules.d/06rngd/sysconfig
new file mode 100644
index 00000000..100e8deb
--- /dev/null
+++ b/modules.d/06rngd/sysconfig
@@ -0,0 +1 @@
+RNGD_ARGS="--fill-watermark=0 -x pkcs11 -x nist -x qrypt"

85
SOURCES/0226.patch Normal file
View File

@ -0,0 +1,85 @@
From 62fb051db129a1cbb5645107933e961a57d8bef3 Mon Sep 17 00:00:00 2001
From: Pavel Valena <pvalena@redhat.com>
Date: Tue, 25 Apr 2023 14:56:59 +0200
Subject: [PATCH] feat(hwdb): install hwdb on demand when module is needed
Adding a module to install hwdb. Further extensions might make only selected
part of hwdb installable, to save space. The module is not included by default.
Including the module adds 2MB of compressed data (on Fedora, the file has 12MB).
hwdb is needed in case of custom HW, like a keyboard/mouse or various interfaces.
Original PR: https://github.com/dracutdevs/dracut/pull/1681
(Cherry-picked commit: 062e739d89543a38d4b3e2cab155912bc4bf9e56)
Resolves: #1968118
---
dracut.sh | 6 ++++++
dracut.spec | 1 +
modules.d/95hwdb/module-setup.sh | 26 ++++++++++++++++++++++++++
3 files changed, 33 insertions(+)
diff --git a/dracut.sh b/dracut.sh
index f58559e8..869b90b0 100755
--- a/dracut.sh
+++ b/dracut.sh
@@ -1302,6 +1302,12 @@ if ! [[ -d "$udevdir" ]]; then
[[ -e /usr/lib/udev/collect ]] && udevdir=/usr/lib/udev
fi
+[[ -d $udevconfdir ]] \
+ || udevconfdir="$(pkg-config udev --variable=udevconfdir 2>/dev/null)"
+if ! [[ -d "$udevconfdir" ]]; then
+ [[ -d /etc/udev ]] && udevconfdir=/etc/udev
+fi
+
[[ -d $systemdutildir ]] \
|| systemdutildir=$(pkg-config systemd --variable=systemdutildir 2>/dev/null)
diff --git a/dracut.spec b/dracut.spec
index 90fa903a..a417f780 100644
--- a/dracut.spec
+++ b/dracut.spec
@@ -365,6 +365,7 @@ echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/
%{dracutlibdir}/modules.d/91crypt-loop
%{dracutlibdir}/modules.d/95debug
%{dracutlibdir}/modules.d/95fstab-sys
+%{dracutlibdir}/modules.d/95hwdb
%{dracutlibdir}/modules.d/95lunmask
%{dracutlibdir}/modules.d/95nvmf
%{dracutlibdir}/modules.d/95resume
diff --git a/modules.d/95hwdb/module-setup.sh b/modules.d/95hwdb/module-setup.sh
new file mode 100755
index 00000000..16365377
--- /dev/null
+++ b/modules.d/95hwdb/module-setup.sh
@@ -0,0 +1,26 @@
+#!/bin/bash
+# This file is part of dracut.
+# SPDX-License-Identifier: GPL-2.0-or-later
+
+check() {
+ return 255
+}
+
+# called by dracut
+install() {
+ local hwdb_bin
+
+ # systemd-hwdb ships the file in /etc, with /usr/lib as an alternative.
+ # Therefore consider this location as preferred for configuration.
+ hwdb_bin="${udevdir}"/hwdb.bin
+
+ if [[ ! -r "${hwdb_bin}" ]]; then
+ hwdb_bin="${udevconfdir}"/hwdb.bin
+ fi
+
+ if [[ $hostonly ]]; then
+ inst_multiple -H "${hwdb_bin}"
+ else
+ inst_multiple "${hwdb_bin}"
+ fi
+}

55
SOURCES/0227.patch Normal file
View File

@ -0,0 +1,55 @@
From a6f8ccba4b55a1f3715a0fd3d8f611b954e443a5 Mon Sep 17 00:00:00 2001
From: David Hildenbrand <david@redhat.com>
Date: Thu, 18 Mar 2021 10:41:49 +0100
Subject: [PATCH] feat(qemu): include the virtio_mem kernel module
This adds support for virtio-mem devices, which provide a dynamic
amount of memory in a VM. Right now, the driver gets loaded and any
memory gets added to the system when loading the kernel module from disk.
While not strictly required to boot, we want to be able to
1) add virito-mem provided memory to the system early while booting up
2) add virtio-mem provided memory even when booting without a disk
3) add virtio-mem devices without adding actual memory in kdump
environments such that we can query things like:
a) is a certain PFN currently plugged in the hypervisor and, therefore,
should actually be read when creating a system dump. (kexec-tools
prepares the vmcore header, like on x86-64)
b) which ranges of a virtio-mem device are currently plugged in the
hypervisor and, therefore, should be added to the dump. (vmcore header
gets prepared by the crashkernel, like on s390x)
Note that loading virtio-mem in kdump environments currently fails with
-EBUSY -- but there are plans to install proper hooks instead to support
especially a) in the near future.
1) and 2) are only really effective when memory hotplug is configured to
automatically online all added system RAM in the kernel (and not late,
via udev rules): e.g., via "mhp_default_state=online" on the kernel
cmdline or via CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE in the kernel.
Especially 2) and 3) require the module to be present inside the initial
ramdisk. The primary use case for including it in the initial ramdisk
is 3).
Signed-off-by: David Hildenbrand <david@redhat.com>
(cherry picked from commit f3dcb60619671f2d353caaa42d38207172c8b3ba)
Cherry-picked from: f3dcb60619671f2d353caaa42d38207172c8b3ba
Resolves: #2228422
---
modules.d/90qemu/module-setup.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/modules.d/90qemu/module-setup.sh b/modules.d/90qemu/module-setup.sh
index 7e5ea6a4..e89dafbb 100755
--- a/modules.d/90qemu/module-setup.sh
+++ b/modules.d/90qemu/module-setup.sh
@@ -31,7 +31,7 @@ installkernel() {
hostonly='' instmods \
ata_piix ata_generic pata_acpi cdrom sr_mod ahci \
virtio_blk virtio virtio_ring virtio_pci \
- virtio_scsi virtio_console virtio_rng \
+ virtio_scsi virtio_console virtio_rng virtio_mem \
spapr-vscsi \
qemu_fw_cfg
}

View File

@ -5,7 +5,7 @@
# strip the automatically generated dep here and instead co-own the
# directory.
%global __requires_exclude pkg-config
%define dist_free_release 223.git20230119
%define dist_free_release 228.git20230802
Name: dracut
Version: 049
@ -250,6 +250,11 @@ Patch219: 0219.patch
Patch220: 0220.patch
Patch221: 0221.patch
Patch222: 0222.patch
Patch223: 0223.patch
Patch224: 0224.patch
Patch225: 0225.patch
Patch226: 0226.patch
Patch227: 0227.patch
Source1: https://www.gnu.org/licenses/lgpl-2.1.txt
@ -588,6 +593,7 @@ echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/
%{dracutlibdir}/modules.d/91crypt-loop
%{dracutlibdir}/modules.d/95debug
%{dracutlibdir}/modules.d/95fstab-sys
%{dracutlibdir}/modules.d/95hwdb
%{dracutlibdir}/modules.d/95lunmask
%{dracutlibdir}/modules.d/95nvmf
%{dracutlibdir}/modules.d/95resume
@ -704,6 +710,20 @@ echo '# Since rhel-8.3 dracut moved to use NetworkManager
add_dracutmodules+=" network-legacy "' > /etc/dracut.conf.d/50-network-legacy.conf
%changelog
* Wed Aug 02 2023 Lukas Nykryn <lnykryn@redhat.com> - 049-228.git20230802
- feat(qemu): include the virtio_mem kernel module
* Tue Jul 25 2023 Pavel Valena <pvalena@redhat.com> - 049-227.git20230725
- fix(rngd): install system service file
- feat(hwdb): install hwdb on demand when module is needed
* Wed Jun 14 2023 Pavel Valena <pvalena@redhat.com> - 049-225.git20230614
- fix(kernel-network-modules): allow specifying empty hostonly-nics
Resolves: #2148318
* Fri Mar 31 2023 Pavel Valena <pvalena@redhat.com> - 049-224.git20230330
- fix(img-lib): ignored null byte in input
* Thu Jan 19 2023 Pavel Valena <pvalena@redhat.com> - 049-223.git20230119
- fix(dracut-init): use ldconfig directly instead of
- fix(dracut-init.sh): backport common paths