public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/dracut] f45: build: batch of fixes 2026-08-14
@ 2026-08-27 10:37 Pavel Valena
  0 siblings, 0 replies; only message in thread
From: Pavel Valena @ 2026-08-27 10:37 UTC (permalink / raw)
  To: git-commits

            A new commit has been pushed.

            Repo   : rpms/dracut
            Branch : f45
            Commit : 254054153d916fe45fdc4829378baed79b2ae878
            Author : Pavel Valena <pvalena@redhat.com>
            Date   : 2026-08-24T16:39:50+02:00
            Stats  : +442/-1 in 9 file(s)
            URL    : https://src.fedoraproject.org/rpms/dracut/c/254054153d916fe45fdc4829378baed79b2ae878?branch=f45

            Log:
            build: batch of fixes 2026-08-14

- feat(dracut): add module to load Qualcomm ADSP module pre-udev
- fix(base): escape die() message in emergency hook script
- fix(base): replace eval with safe variable indirection in splitsep and export_n
- perf(devicetree-firmware): do not call inst_multiple if there are no fw files
- refactor(devicetree-firmware): make looping over fw_dir top-level loop
- fix(devicetree-firmware): include soc specific firmwares in install_generic()
- fix(devicetree-firmware): include Qualcomm X2 laptop model specific firmwares

From-source-git-commit: 8dccf18a8ff2e761fee9a26d52d3e58e6bc5a3f7

---
diff --git a/0013-feat-dracut-add-module-to-load-Qualcomm-ADSP-module-.patch b/0013-feat-dracut-add-module-to-load-Qualcomm-ADSP-module-.patch
new file mode 100644
index 0000000..3d9f99b
--- /dev/null
+++ b/0013-feat-dracut-add-module-to-load-Qualcomm-ADSP-module-.patch
@@ -0,0 +1,129 @@
+From 419361fcae0929dd1e99e7ba1890a982de318039 Mon Sep 17 00:00:00 2001
+From: Hans de Goede <johannes.goede@oss.qualcomm.com>
+Date: Fri, 13 Mar 2026 19:13:57 +0100
+Subject: [PATCH 13/16] feat(dracut): add module to load Qualcomm ADSP module
+ pre-udev
+
+Cherry picked from upstream commit 647a685d3567 ("feat(dracut): add module
+to load Qualcomm ADSP module pre-udev"). Upstream PR (merged):
+https://github.com/dracut-ng/dracut-ng/pull/2302
+
+On Qualcomm sc8280xp and x1e laptops the kernel reboots the ADSP with new
+firmware because the BIOS loads ADSP firmware with limited functionality
+without sound or battery charge/status reading support.
+
+Unfortunately the ADSP also controls the TCPM (Type-C Port Manager) and
+rebooting the ADSP also resets the TCPM, causing any USB devices connected
+over Type-C ports to get disconnected as all devices on the USB bus are
+removed and re-enumerated.
+
+This breaks booting from USB-drives as the drive gets disconnected and
+re-enumerated as a new block device, leaving any filesystems mounted
+before the ADSP reset without any backing device.
+
+To workaround this add a module to load the ADSP driver from a pre-udev
+hook so that the USB re-enumeration happens before the rootfs is mounted.
+
+Signed-off-by: Hans de Goede <johannes.goede@oss.qualcomm.com>
+---
+Changes in v5:
+- Sort `inst_multiple` arguments alphabetically
+
+Changes in v4:
+- Change host-only check to [[ $hostonly_mode == "strict" ]] so that
+  30-qcom-adsp-pre-udev.sh gets installed in sloppy hostonly mode
+- Add modprobe to list of binaries to install from install()
+
+Changes in v3:
+- Add "inst grep" to install()
+
+Changes in v2:
+- Directly use $DRACUT_ARCH instead of defining _arch local var
+- Add the new module to labeler.yml and core.adoc
+---
+ doc_site/modules/ROOT/pages/modules/core.adoc |  4 ++
+ modules.d/70qcom-adsp/module-setup.sh         | 40 +++++++++++++++++++
+ modules.d/70qcom-adsp/qcom-adsp-pre-udev.sh   |  9 +++++
+ 3 files changed, 53 insertions(+)
+ create mode 100755 modules.d/70qcom-adsp/module-setup.sh
+ create mode 100755 modules.d/70qcom-adsp/qcom-adsp-pre-udev.sh
+
+diff --git a/doc_site/modules/ROOT/pages/modules/core.adoc b/doc_site/modules/ROOT/pages/modules/core.adoc
+index 42538dea..9f2dffc7 100644
+--- a/doc_site/modules/ROOT/pages/modules/core.adoc
++++ b/doc_site/modules/ROOT/pages/modules/core.adoc
+@@ -201,6 +201,10 @@ code, there are no specific types or categories for dracut modules.
+ | polls CD-ROM
+ |
+ 
++| qcom-adsp
++| Load Qualcomm ADSP module pre-udev
++|
++
+ | rescue
+ | utilities for rescue mode (such as ping, ssh, vi, fsck.*)
+ | utils
+diff --git a/modules.d/70qcom-adsp/module-setup.sh b/modules.d/70qcom-adsp/module-setup.sh
+new file mode 100755
+index 00000000..a3d05057
+--- /dev/null
++++ b/modules.d/70qcom-adsp/module-setup.sh
+@@ -0,0 +1,40 @@
++#!/bin/bash
++# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
++# ex: ts=8 sw=4 sts=4 et filetype=sh
++
++# On Qualcomm sc8280xp and x1e laptops the kernel reboots the ADSP with new
++# firmware because the BIOS loads ADSP firmware with limited functionality
++# without sound or battery charge/status reading support.
++#
++# Unfortunately the ADSP also controls the TCPM (Type-C Port Manager) and
++# rebooting the ADSP also resets the TCPM, causing any USB devices connected
++# over Type-C ports to get disconnected as all devices on the USB bus are
++# removed and re-enumerated.
++#
++# This breaks booting from USB-drives as the drive gets disconnected and
++# re-enumerated as a new block device, leaving any filesystems mounted
++# before the ADSP reset without any backing device.
++#
++# To workaround this, this module load the ADSP driver from a pre-udev hook
++# so that the USB re-enumeration happens before the rootfs is mounted.
++
++# called by dracut
++check() {
++    [ "$DRACUT_ARCH" = "aarch64" ] || return 1
++    if [[ $hostonly_mode == "strict" ]]; then
++        grep -q -E 'qcom,sc8280xp-adsp-pas|qcom,x1e80100-adsp-pas' \
++            /sys/bus/platform/devices/*.remoteproc/modalias 2> /dev/null || return 1
++    fi
++    return 0
++}
++
++# called by dracut
++installkernel() {
++    instmods qcom_q6v5_pas
++}
++
++# called by dracut
++install() {
++    inst_multiple grep modprobe
++    inst_hook pre-udev 30 "$moddir/qcom-adsp-pre-udev.sh"
++}
+diff --git a/modules.d/70qcom-adsp/qcom-adsp-pre-udev.sh b/modules.d/70qcom-adsp/qcom-adsp-pre-udev.sh
+new file mode 100755
+index 00000000..2c408428
+--- /dev/null
++++ b/modules.d/70qcom-adsp/qcom-adsp-pre-udev.sh
+@@ -0,0 +1,9 @@
++#!/bin/sh
++
++# Ensure ADSP module is loaded and Type-C USB busses are reset before
++# filesystems are mounted
++
++if grep -q -E 'qcom,sc8280xp-adsp-pas|qcom,x1e80100-adsp-pas' \
++    /sys/bus/platform/devices/*.remoteproc/modalias 2> /dev/null; then
++    modprobe qcom_q6v5_pas
++fi
+-- 
+2.55.0
+

diff --git a/0014-fix-base-escape-die-message-in-emergency-hook-script.patch b/0014-fix-base-escape-die-message-in-emergency-hook-script.patch
new file mode 100644
index 0000000..d6be7f3
--- /dev/null
+++ b/0014-fix-base-escape-die-message-in-emergency-hook-script.patch
@@ -0,0 +1,45 @@
+From ee9352b57eea781573615e5c2d88b9ff258a5ea5 Mon Sep 17 00:00:00 2001
+From: Pavel Valena <pvalena@redhat.com>
+Date: Tue, 28 Jul 2026 04:03:13 +0200
+Subject: [PATCH 14/16] fix(base): escape die() message in emergency hook
+ script
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+die() appends its error message to $hookdir/emergency/01-die.sh using
+echo "warn dracut: FATAL: \"$*\"", which is later sourced by
+emergency_shell(). When die() is called with DHCP-controlled data —
+specifically $netroot derived from the DHCP ROOT_PATH option via
+netroot.sh's handler-resolution failure path — a command-substitution
+sequence such as $(cmd) embedded in that data executes as root when
+dracut sources the emergency hook directory.
+
+Replace `echo` with `printf '%q'` to shell-escape the message before
+writing it into the hook script, preventing command injection via
+DHCP-controlled values that reach die() through error paths.
+
+Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
+
+(cherry picked from commit daed5d8f3691580a6b9b72e54d7bfc5fb6ded4df)
+---
+ modules.d/80base/dracut-lib.sh | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/modules.d/80base/dracut-lib.sh b/modules.d/80base/dracut-lib.sh
+index 339567d9..dfec0ddf 100755
+--- a/modules.d/80base/dracut-lib.sh
++++ b/modules.d/80base/dracut-lib.sh
+@@ -427,7 +427,8 @@ die() {
+     } > /dev/kmsg
+ 
+     {
+-        echo "warn dracut: FATAL: \"$*\""
++        printf 'warn dracut: FATAL: %q\n' "$*"
++
+         echo "warn dracut: Refusing to continue"
+     } >> $hookdir/emergency/01-die.sh
+     [ -d /run/initramfs ] || mkdir -p -- /run/initramfs
+-- 
+2.55.0
+

diff --git a/0015-fix-base-replace-eval-with-safe-variable-indirection.patch b/0015-fix-base-replace-eval-with-safe-variable-indirection.patch
new file mode 100644
index 0000000..5c0f191
--- /dev/null
+++ b/0015-fix-base-replace-eval-with-safe-variable-indirection.patch
@@ -0,0 +1,59 @@
+From 1d7bc628f3acfa9f079555c6080df44b648df9cf Mon Sep 17 00:00:00 2001
+From: Pavel Valena <pvalena@redhat.com>
+Date: Thu, 7 May 2026 00:59:05 +0200
+Subject: [PATCH 15/16] fix(base): replace eval with safe variable indirection
+ in splitsep and export_n
+
+splitsep: use local nameref to avoid eval injection via single-quote breakout.
+export_n: use ${!var} and printf -v to avoid eval injection via double-quote breakout.
+
+(cherry picked from commit 2a395c7d4abe8e26836ecf109ab69600d4243e03)
+---
+ modules.d/80base/dracut-lib.sh | 15 ++++++++++-----
+ 1 file changed, 10 insertions(+), 5 deletions(-)
+
+diff --git a/modules.d/80base/dracut-lib.sh b/modules.d/80base/dracut-lib.sh
+index dfec0ddf..8f9fb412 100755
+--- a/modules.d/80base/dracut-lib.sh
++++ b/modules.d/80base/dracut-lib.sh
+@@ -336,12 +336,18 @@ splitsep() {
+ 
+     while [ -n "$str" ] && [ "$#" -gt 1 ]; do
+         tmp="${str%%"$sep"*}"
+-        eval "$1='${tmp}'"
++        local -n _splitsep_ref="$1"
++        _splitsep_ref="$tmp"
++        unset -n _splitsep_ref
+         str="${str#"$tmp"}"
+         str="${str#"$sep"}"
+         shift
+     done
+-    [ -n "$str" ] && [ -n "$1" ] && eval "$1='$str'"
++    if [ -n "$str" -a -n "$1" ]; then
++        local -n _splitsep_ref="$1"
++        _splitsep_ref="$str"
++        unset -n _splitsep_ref
++    fi
+     debug_on
+     return 0
+ }
+@@ -940,14 +946,13 @@ emergency_shell() {
+ }
+ 
+ # Retain the values of these variables but ensure that they are unexported
+-# This is a POSIX-compliant equivalent of bash's "export -n"
+ export_n() {
+     local var
+     local val
+     for var in "$@"; do
+-        eval "val=\$$var"
++        val="${!var}"
+         unset "$var"
+-        [ -n "$val" ] && eval "$var=\"$val\""
++        [ -n "$val" ] && printf -v "$var" '%s' "$val"
+     done
+ }
+ 
+-- 
+2.55.0
+

diff --git a/0016-build-Makefile-do-not-fail-on-network-legacy-missing.patch b/0016-build-Makefile-do-not-fail-on-network-legacy-missing.patch
new file mode 100644
index 0000000..c916550
--- /dev/null
+++ b/0016-build-Makefile-do-not-fail-on-network-legacy-missing.patch
@@ -0,0 +1,24 @@
+From d14f81d2743aceb8a3651f1b643bda27e442b0e8 Mon Sep 17 00:00:00 2001
+From: Pavel Valena <pvalena@redhat.com>
+Date: Fri, 14 Aug 2026 02:08:24 +0200
+Subject: [PATCH 16/16] build(Makefile): do not fail on network-legacy missing
+
+---
+ Makefile | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/Makefile b/Makefile
+index ee6ff229..333c6304 100644
+--- a/Makefile
++++ b/Makefile
+@@ -289,6 +289,7 @@ endif
+ 	mkdir -p $(DESTDIR)${pkgconfigdatadir}
+ 	install -m 0644 dracut.pc $(DESTDIR)${pkgconfigdatadir}/dracut.pc
+ ifneq ($(enable_network_legacy),yes)
++	mkdir -p $(DESTDIR)$(pkglibdir)/modules.d/00network-legacy
+ 	rm -r $(DESTDIR)$(pkglibdir)/modules.d/[0-9][0-9]network-legacy
+ endif
+ 	if ! [ -n "$(systemdsystemunitdir)" ]; then \
+-- 
+2.55.0
+

diff --git a/0017-perf-devicetree-firmware-do-not-call-inst_multiple-i.patch b/0017-perf-devicetree-firmware-do-not-call-inst_multiple-i.patch
new file mode 100644
index 0000000..79eb27e
--- /dev/null
+++ b/0017-perf-devicetree-firmware-do-not-call-inst_multiple-i.patch
@@ -0,0 +1,38 @@
+From 60213a107b4f7aee720010df8aad776509f6e43d Mon Sep 17 00:00:00 2001
+From: Antonio Alvarez Feijoo <antonio.feijoo@suse.com>
+Date: Fri, 3 Jul 2026 16:15:10 +0200
+Subject: [PATCH 17/20] perf(devicetree-firmware): do not call inst_multiple if
+ there are no fw files
+
+Upstream status: cherry-pick from upstream commit c1cb94f082b8.
+
+Otherwise `inst_multiple -o` is called without arguments.
+---
+ modules.d/70devicetree-firmware/module-setup.sh | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/modules.d/70devicetree-firmware/module-setup.sh b/modules.d/70devicetree-firmware/module-setup.sh
+index 5b6b7467..100e027a 100755
+--- a/modules.d/70devicetree-firmware/module-setup.sh
++++ b/modules.d/70devicetree-firmware/module-setup.sh
+@@ -40,7 +40,7 @@ install_hostonly() {
+             done
+         done
+     done
+-    inst_multiple -o "${_fw_files[@]}"
++    ((${#_fw_files[@]} > 0)) && inst_multiple -o "${_fw_files[@]}"
+ }
+ 
+ # generic install (hostonly / generic use completely different approaches)
+@@ -58,7 +58,7 @@ install_generic() {
+             done
+         done
+     done
+-    inst_multiple -o "${_fw_files[@]}"
++    ((${#_fw_files[@]} > 0)) && inst_multiple -o "${_fw_files[@]}"
+ }
+ 
+ # called by dracut
+-- 
+2.55.0
+

diff --git a/0018-refactor-devicetree-firmware-make-looping-over-fw_di.patch b/0018-refactor-devicetree-firmware-make-looping-over-fw_di.patch
new file mode 100644
index 0000000..914df89
--- /dev/null
+++ b/0018-refactor-devicetree-firmware-make-looping-over-fw_di.patch
@@ -0,0 +1,37 @@
+From c6ca6500d94ba456b14704f82b73588cc823022a Mon Sep 17 00:00:00 2001
+From: Hans de Goede <johannes.goede@oss.qualcomm.com>
+Date: Sun, 16 Aug 2026 14:14:37 +0200
+Subject: [PATCH 18/20] refactor(devicetree-firmware): make looping over fw_dir
+ top-level loop
+
+Upstream-status: https://github.com/dracut-ng/dracut/pull/2598
+
+Make the looping over $fw_dir the top-level loop. This is a preparation
+patch for adding support to install_generic() to add soc specific
+firmwares (qcom/<soc>/qupv3fw.elf).
+---
+ modules.d/70devicetree-firmware/module-setup.sh | 8 ++++----
+ 1 file changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/modules.d/70devicetree-firmware/module-setup.sh b/modules.d/70devicetree-firmware/module-setup.sh
+index 100e027a..16b9e00f 100755
+--- a/modules.d/70devicetree-firmware/module-setup.sh
++++ b/modules.d/70devicetree-firmware/module-setup.sh
+@@ -46,10 +46,10 @@ install_hostonly() {
+ # generic install (hostonly / generic use completely different approaches)
+ install_generic() {
+     local _fw_files=()
+-    # ATM only qcom WoA laptops need this
+-    for _soc in qcom/sc8280xp qcom/x1e80100; do
+-        # shellcheck disable=SC2154 # fw_dir is set by dracut.sh
+-        for _fwdir in $fw_dir; do
++    # shellcheck disable=SC2154 # fw_dir is set by dracut.sh
++    for _fwdir in $fw_dir; do
++        # add laptop model specific firmwares for qcom WoA laptops
++        for _soc in qcom/sc8280xp qcom/x1e80100; do
+             # add '*' after mbn, elf for .gz, etc. compression
+             for _fw in "$_fwdir/$_soc"/*/*/*.mbn* "$_fwdir/$_soc"/*/*/*.elf*; do
+                 [ -f "$_fw" ] || continue
+-- 
+2.55.0
+

diff --git a/0019-fix-devicetree-firmware-include-soc-specific-firmwar.patch b/0019-fix-devicetree-firmware-include-soc-specific-firmwar.patch
new file mode 100644
index 0000000..9f3ea5c
--- /dev/null
+++ b/0019-fix-devicetree-firmware-include-soc-specific-firmwar.patch
@@ -0,0 +1,40 @@
+From 61ae0147e38d425b1c9e623fe2925b31b07dbe47 Mon Sep 17 00:00:00 2001
+From: Hans de Goede <johannes.goede@oss.qualcomm.com>
+Date: Sun, 16 Aug 2026 14:19:45 +0200
+Subject: [PATCH 19/20] fix(devicetree-firmware): include soc specific
+ firmwares in install_generic()
+
+Upstream-status: https://github.com/dracut-ng/dracut/pull/2598
+
+Qualcomm boards may use SoC specific firmwares from an otherwise generic
+driver like qcom-geni-se. Which firmware to load is specified with
+a firmware-name devicetree-property, so install_hostonly() already picks
+these up.
+
+Make install_generic() also include these in the initramfs by explicitly
+searching for them similar to how this is already done for Qualcomm laptop
+model specific firmwares.
+---
+ modules.d/70devicetree-firmware/module-setup.sh | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/modules.d/70devicetree-firmware/module-setup.sh b/modules.d/70devicetree-firmware/module-setup.sh
+index 16b9e00f..e725ac97 100755
+--- a/modules.d/70devicetree-firmware/module-setup.sh
++++ b/modules.d/70devicetree-firmware/module-setup.sh
+@@ -57,6 +57,12 @@ install_generic() {
+                 _fw_files+=("$_fw")
+             done
+         done
++        # add soc specific firmwares needed to boot some qcom boards
++        for _fw in "$_fwdir/qcom"/*/qupv3fw.elf*; do
++            [ -f "$_fw" ] || continue
++            _fw=${_fw#"${dracutsysrootdir-}"}
++            _fw_files+=("$_fw")
++        done
+     done
+     ((${#_fw_files[@]} > 0)) && inst_multiple -o "${_fw_files[@]}"
+ }
+-- 
+2.55.0
+

diff --git a/0020-fix-devicetree-firmware-include-Qualcomm-X2-laptop-m.patch b/0020-fix-devicetree-firmware-include-Qualcomm-X2-laptop-m.patch
new file mode 100644
index 0000000..ab56105
--- /dev/null
+++ b/0020-fix-devicetree-firmware-include-Qualcomm-X2-laptop-m.patch
@@ -0,0 +1,33 @@
+From 0d4478299e229c4bd8d9f2d25e3622771ab4e1cc Mon Sep 17 00:00:00 2001
+From: Hans de Goede <johannes.goede@oss.qualcomm.com>
+Date: Sun, 16 Aug 2026 14:24:57 +0200
+Subject: [PATCH 20/20] fix(devicetree-firmware): include Qualcomm X2 laptop
+ model specific firmwares
+
+Upstream-status: https://github.com/dracut-ng/dracut/pull/2598
+
+Qualcomm laptops typically have laptop model specific firmwares.
+
+Extend install_generic() to pick up the laptop model specific firmwares
+for the new X2 / Glymur laptops which have a filename pattern of:
+<fwdir>/qcom/glymur/<vendor>/<model>/*.[mbn|elf]
+---
+ modules.d/70devicetree-firmware/module-setup.sh | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/modules.d/70devicetree-firmware/module-setup.sh b/modules.d/70devicetree-firmware/module-setup.sh
+index e725ac97..ceb49583 100755
+--- a/modules.d/70devicetree-firmware/module-setup.sh
++++ b/modules.d/70devicetree-firmware/module-setup.sh
+@@ -49,7 +49,7 @@ install_generic() {
+     # shellcheck disable=SC2154 # fw_dir is set by dracut.sh
+     for _fwdir in $fw_dir; do
+         # add laptop model specific firmwares for qcom WoA laptops
+-        for _soc in qcom/sc8280xp qcom/x1e80100; do
++        for _soc in qcom/sc8280xp qcom/x1e80100 qcom/glymur; do
+             # add '*' after mbn, elf for .gz, etc. compression
+             for _fw in "$_fwdir/$_soc"/*/*/*.mbn* "$_fwdir/$_soc"/*/*/*.elf*; do
+                 [ -f "$_fw" ] || continue
+-- 
+2.55.0
+

diff --git a/dracut.spec b/dracut.spec
index a336658..fb48cd1 100644
--- a/dracut.spec
+++ b/dracut.spec
@@ -8,7 +8,7 @@
 
 Name: dracut
 Version: 111
-Release: 1%{?dist}
+Release: 2%{?dist}
 
 Summary: Initramfs generator using udev
 
@@ -58,6 +58,30 @@ Patch11: 0011-fix-net-lib-warn-on-suspicious-shell-metacharacters-.patch
 # fix(systemd-networkd): escape DHCP lease values in dhcpopts generation
 # Author: Pavel Valena <pvalena@redhat.com>
 Patch12: 0012-fix-systemd-networkd-escape-DHCP-lease-values-in-dhc.patch
+# feat(dracut): add module to load Qualcomm ADSP module pre-udev
+# Author: Hans de Goede <johannes.goede@oss.qualcomm.com>
+Patch13: 0013-feat-dracut-add-module-to-load-Qualcomm-ADSP-module-.patch
+# fix(base): escape die() message in emergency hook script
+# Author: Pavel Valena <pvalena@redhat.com>
+Patch14: 0014-fix-base-escape-die-message-in-emergency-hook-script.patch
+# fix(base): replace eval with safe variable indirection in splitsep and export_n
+# Author: Pavel Valena <pvalena@redhat.com>
+Patch15: 0015-fix-base-replace-eval-with-safe-variable-indirection.patch
+# build(Makefile): do not fail on network-legacy missing
+# Author: Pavel Valena <pvalena@redhat.com>
+Patch16: 0016-build-Makefile-do-not-fail-on-network-legacy-missing.patch
+# perf(devicetree-firmware): do not call inst_multiple if there are no fw files
+# Author: Antonio Alvarez Feijoo <antonio.feijoo@suse.com>
+Patch17: 0017-perf-devicetree-firmware-do-not-call-inst_multiple-i.patch
+# refactor(devicetree-firmware): make looping over fw_dir top-level loop
+# Author: Hans de Goede <johannes.goede@oss.qualcomm.com>
+Patch18: 0018-refactor-devicetree-firmware-make-looping-over-fw_di.patch
+# fix(devicetree-firmware): include soc specific firmwares in install_generic()
+# Author: Hans de Goede <johannes.goede@oss.qualcomm.com>
+Patch19: 0019-fix-devicetree-firmware-include-soc-specific-firmwar.patch
+# fix(devicetree-firmware): include Qualcomm X2 laptop model specific firmwares
+# Author: Hans de Goede <johannes.goede@oss.qualcomm.com>
+Patch20: 0020-fix-devicetree-firmware-include-Qualcomm-X2-laptop-m.patch
 
 # Please use source-git to work with this spec file:
 # HowTo: https://packit.dev/source-git/work-with-source-git
@@ -375,6 +399,7 @@ echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/
 %{dracutlibdir}/modules.d/70overlayfs
 %{dracutlibdir}/modules.d/70pcmcia
 %{dracutlibdir}/modules.d/70ppcmac
+%{dracutlibdir}/modules.d/70qcom-adsp
 %{dracutlibdir}/modules.d/70qemu
 %{dracutlibdir}/modules.d/71overlayfs-crypt
 %{dracutlibdir}/modules.d/71systemd-cryptsetup
@@ -502,6 +527,17 @@ echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/
 %{_prefix}/lib/kernel/install.d/51-dracut-rescue.install
 
 %changelog
+* Tue Aug 18 2026 Hans de Goede <johannes.goede@oss.qualcomm.com> - 111-2
+- fix(devicetree-firmware): include soc specific firmwares in install_generic()
+- fix(devicetree-firmware): include Qualcomm X2 laptop model specific firmwares
+
+* Thu Aug 13 2026 Pavel Valena <pvalena@redhat.com> - 111-2
+- fix(base): escape die() message in emergency hook script
+- fix(base): replace eval with safe variable indirection in splitsep and export_n
+
+* Mon aug 10 2026 Hans de Goede <johannes.goede@oss.qualcomm.com> - 111-2
+- feat(dracut): add module to load Qualcomm ADSP module pre-udev
+
 * Fri Jul 31 2026 Pavel Valena <pvalena@redhat.com> - 111-1
 - build: upgrade to dracut 111
 

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2026-08-27 10:37 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-08-27 10:37 [rpms/dracut] f45: build: batch of fixes 2026-08-14 Pavel Valena

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox