Public bug reported:

[Impact]
Devices that rely on hwdb metadata for proper naming or configuration may not 
function as expected during initramfs boot.
The issue is that systemd currently does not include the hwdb database in the 
initramfs, despite the fact that udev rules
triggered during early boot can rely on it.

This can result in:
- Network interfaces being named generically or inconsistently
- Missing metadata required by certain udev rules to configure hardware 
correctly
- Confusion or misbehavior in early provisioning and installation environments

This can be observed in any environments using devices that rely on
metadata from hwdb for correct naming.

The core problem is that the initramfs environment behaves inconsistently 
compared to the root filesystem environment due to
missing hwdb data, even though the same udev rules run in both.

This issue has been resolved with upstream commit:
https://salsa.debian.org/systemd-team/systemd/-/commit/e3955d1ca26b94b918ca000837f75c0342e77ad7

[Test Case]
Use hardware with known hwdb-dependent behavior.
Without access to such hardware, scenario can be verified using custom hwdb 
rules:
(assuming a VM with virtio interface)
cat /sys/class/net/enp1s0/device/../modalias
pci:v00001AF4d00001041sv00001AF4sd00001100bc02sc00i00

nano /etc/udev/hwdb.d/99-custom-net-names.hwdb
pci:v00001AF4d00001041*
  ID_NET_NAME_PATH=customvirtio0

build hwdb:
systemd-hwdb update

trigger modified hooks:
update-initramfs -u

reboot into initramfs:
check if hwdb.bin is present
check if udev applies new interface name

[Where problems could occur]
This change affects the systemd-udev initramfs hook, ensuring the hwdb database 
is installed into the initramfs.
This does not change udev behavior itself, but makes static metadata available 
in the initramfs.

Potential areas of concern:
- Slight increase in initramfs size.
- If the hook fails to copy hwdb.bin, initramfs builds could break.
- Some environments may have scripts or tools that have adapted to the absence 
of hwdb data in the initramfs.
These might begin behaving differently once the metadata becomes available for 
instance, interfaces might be renamed, or metadata-dependent logic could change 
unexpectedly.

[Other Info]
Upstream commit:
https://salsa.debian.org/systemd-team/systemd/-/commit/e3955d1ca26b94b918ca000837f75c0342e77ad7
Patch is available in Plucky.

** Affects: systemd (Ubuntu)
     Importance: Undecided
         Status: New

** Affects: systemd (Ubuntu Focal)
     Importance: Undecided
         Status: New

** Affects: systemd (Ubuntu Jammy)
     Importance: Undecided
         Status: New

** Affects: systemd (Ubuntu Noble)
     Importance: Undecided
         Status: New

** Affects: systemd (Ubuntu Oracular)
     Importance: Undecided
         Status: New

** Also affects: systemd (Ubuntu Focal)
   Importance: Undecided
       Status: New

** Also affects: systemd (Ubuntu Noble)
   Importance: Undecided
       Status: New

** Also affects: systemd (Ubuntu Jammy)
   Importance: Undecided
       Status: New

** Also affects: systemd (Ubuntu Oracular)
   Importance: Undecided
       Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to systemd in Ubuntu.
https://bugs.launchpad.net/bugs/2112237

Title:
  hwdb.bin not available in initramfs

Status in systemd package in Ubuntu:
  New
Status in systemd source package in Focal:
  New
Status in systemd source package in Jammy:
  New
Status in systemd source package in Noble:
  New
Status in systemd source package in Oracular:
  New

Bug description:
  [Impact]
  Devices that rely on hwdb metadata for proper naming or configuration may not 
function as expected during initramfs boot.
  The issue is that systemd currently does not include the hwdb database in the 
initramfs, despite the fact that udev rules
  triggered during early boot can rely on it.

  This can result in:
  - Network interfaces being named generically or inconsistently
  - Missing metadata required by certain udev rules to configure hardware 
correctly
  - Confusion or misbehavior in early provisioning and installation environments

  This can be observed in any environments using devices that rely on
  metadata from hwdb for correct naming.

  The core problem is that the initramfs environment behaves inconsistently 
compared to the root filesystem environment due to
  missing hwdb data, even though the same udev rules run in both.

  This issue has been resolved with upstream commit:
  
https://salsa.debian.org/systemd-team/systemd/-/commit/e3955d1ca26b94b918ca000837f75c0342e77ad7

  [Test Case]
  Use hardware with known hwdb-dependent behavior.
  Without access to such hardware, scenario can be verified using custom hwdb 
rules:
  (assuming a VM with virtio interface)
  cat /sys/class/net/enp1s0/device/../modalias
  pci:v00001AF4d00001041sv00001AF4sd00001100bc02sc00i00

  nano /etc/udev/hwdb.d/99-custom-net-names.hwdb
  pci:v00001AF4d00001041*
    ID_NET_NAME_PATH=customvirtio0

  build hwdb:
  systemd-hwdb update

  trigger modified hooks:
  update-initramfs -u

  reboot into initramfs:
  check if hwdb.bin is present
  check if udev applies new interface name

  [Where problems could occur]
  This change affects the systemd-udev initramfs hook, ensuring the hwdb 
database is installed into the initramfs.
  This does not change udev behavior itself, but makes static metadata 
available in the initramfs.

  Potential areas of concern:
  - Slight increase in initramfs size.
  - If the hook fails to copy hwdb.bin, initramfs builds could break.
  - Some environments may have scripts or tools that have adapted to the 
absence of hwdb data in the initramfs.
  These might begin behaving differently once the metadata becomes available 
for instance, interfaces might be renamed, or metadata-dependent logic could 
change unexpectedly.

  [Other Info]
  Upstream commit:
  
https://salsa.debian.org/systemd-team/systemd/-/commit/e3955d1ca26b94b918ca000837f75c0342e77ad7
  Patch is available in Plucky.

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


-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to