[Bug 2095518] Re: dracut-install does not install compressed wildcard blobs

You-Sheng Yang 2095518 at bugs.launchpad.net
Wed Jan 22 16:35:00 UTC 2025


Attached debdiffs for Noble/Oracular/Plucky. Jammy takes a non-trivial
backport.

Also pushed to https://launchpad.net/~vicamo/+archive/ubuntu/sru for
reference.


** Attachment added: "dracut_103-1ubuntu4.oracular.debdiff"
   https://bugs.launchpad.net/bugs/2095518/+attachment/5853511/+files/dracut_103-1ubuntu4.oracular.debdiff

** Attachment added: "dracut_105-2ubuntu6.plucky.debdiff"
   https://bugs.launchpad.net/bugs/2095518/+attachment/5853512/+files/dracut_105-2ubuntu6.plucky.debdiff

** Attachment added: "dracut_060+5-1ubuntu3.3.noble.debdiff"
   https://bugs.launchpad.net/bugs/2095518/+attachment/5853513/+files/dracut_060+5-1ubuntu3.3.noble.debdiff

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to dracut in Ubuntu.
Matching subscriptions: dracut
https://bugs.launchpad.net/bugs/2095518

Title:
  dracut-install does not install compressed wildcard blobs

Status in dracut package in Ubuntu:
  New
Status in dracut source package in Jammy:
  New
Status in dracut source package in Noble:
  New
Status in dracut source package in Oracular:
  New
Status in dracut source package in Plucky:
  New

Bug description:
  [Describe the bug]

  Take kernel module intel-ish-ipc for example, it has two firmware
  declarations:

  ```
  $ modinfo intel-ish-ipc | grep ^firmware
  firmware: intel/ish/ish_*.bin
  firmware: intel/ish/ish_lnlm.bin
  ```

  And with additional custom ISH firmware installed from [bug
  2094768](https://bugs.launchpad.net/bugs/2094768), update-initramefs
  gives:

  ```
  $ update-initramefs -v -u -k $(uname -r)
  ...
  dracut-install: Missing firmware intel/ish/ish_*.bin for kernel module intel_ish_ipc
  dracut-install: mkdir '/var/tmp/mkinitramfs_9uk7FI/lib/firmware/intel/ish'
  dracut-install: cp '/lib/firmware/intel/ish/ish_lnlm_39ceeaf8_58.7724.2.bin.zst' '/var/tmp/mkinitramfs_9uk7FI/lib/firmware/intel/ish/ish_lnlm_39ceeaf8_58.7724.2.bin.zst'
  dracut-install: ln -s 'ish_lnlm_39ceeaf8_58.7724.2.bin.zst' '/var/tmp/mkinitramfs_9uk7FI/lib/firmware/intel/ish/ish_lnlm.bin.zst'
  ...
  ```

  In source code for `/usr/lib/dracut/dracut-install`, that is, source
  package dracut, file `src/install/dracut-install.c`, function
  `install_firmware`, it tries to invoke `glob()` with full path
  expanded from "intel/ish/ish_*.bin", but while all the binaries were
  compressed, this matches no file and none of the custom ISH firmware
  blobs will be installed.

  [Distribution used]

  Ubuntu

  [Dracut version]

  This was first found in Ubuntu/Noble, which has 060, but from the git
  history and the differences, this should be reproducible with all
  versions of dracut.

  [Init system]

  Systemd.

  [To Reproduce]

  1. touch `/lib/firmware/intel/ish/ish_foo.bin.zst`
  2. `update-initramefs -v -u -k $(uname -r)`, and check if above file was added.

  [Expected behavior]

  Any file under `/lib/firmware/intel/ish` matches
  `intel/ish/ish_*.bin`, compressed (.zst, .xz) or uncompressed (.bin),
  should be added into the newly created initramefs.

  [Additional context]

  Upstream bug: https://github.com/dracut-ng/dracut-ng/issues/1150

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/dracut/+bug/2095518/+subscriptions




More information about the foundations-bugs mailing list