[ubuntu/questing-proposed] initramfs-tools 0.150ubuntu2 (Accepted)

Benjamin Drung bdrung at ubuntu.com
Tue Sep 16 10:10:46 UTC 2025


initramfs-tools (0.150ubuntu2) questing; urgency=medium

  * Revert making 3cpio the default cpio tool since it is too late for the
    questing release cycle.

initramfs-tools (0.150ubuntu1) questing; urgency=medium

  * Merge with Debian unstable. Remaining changes:
    - Use 3cpio for unmkinitramfs/lsinitramfs if available (for massive speedup)
      and let initramfs-tools-core suggest 3cpio
    - Harmonize kernel module installation with dracut's behavior:
      - Do not install ARM/RISCV specific modules on other architectures.
    - Revert "autopkgtest: Fix test failure when built-in drivers request
      firmware". This workaround is not needed on Ubuntu.
    - support mounting of loopback devices via loop*= parameters
    - Add vfat and nls modules to the initramfs.
    - Drop hooks/keymap, scripts/init-top/keymap, and associated code;
      console-setup takes care of this in Ubuntu.
    - Allow scripts and hooks to specify OPTION=VAR, and unless VAR is set to
      something other than "n", the script will not be included.
    - Add a new wait-for-root binary to the initramfs-tools-bin package that
      uses libudev to wait for udev to create the udev device, or wait for
      udev to finish processing if we catch it in the act, and returns the
      filesystem type as already probed by udev.
    - Automatically blacklist vga16fb when vga= or video= specified on kernel
      command-line.
    - Add hwaddr= alias for BOOTIF= for compatibility.
    - Set hostname at boot, for the benefit of mdadm autoassembly.
    - Add Hyper-V paravirtualised device drivers to the initramfs to allow
      booting of stock images in a Hyper-V guest.
    - ppc64el: enable PowerPC NX Crypto Coprocessor
    - Add support for uppercase and lowercase uuids.
    - Make busybox-initramfs a real runtime dependency, fixing kernel install
      failures with cryptsetup
    - init: Don't interpret "rootdelay" as a static sleep.
    - scripts/local: Let rootdelay determine the wait-for-root timeout.
    - Increase rootdelay to 180s on powerpc/ppc64/ppc64el
    - Support roottimeout= as the authoritative name for rootdelay= since the
      Ubuntu interpretation of rootdelay is *not* a delay and this causes
      inconsistent behavior depending on whether the kernel or an initramfs is
      interpreting it.
    - Revised mountroot failure support.  This is now deprecated and
      effectively removed.  However, to prevent breakage in other packages the
      add_mountroot_fail_hook function is still present as an empty stub.
    - Add a new 'fixrtc' script that tries to set the system clock forward
      based on the last mount time of the root disk; without this kludge,
      systems without a working RTC will end up in a perpetual reboot loop.
    - Restore the framebuffer hook and script, copying KMS and other
      framebuffer drivers into the initramfs, but make them optional; you need
      to set FRAMEBUFFER=y for these to be included.
    - netinfo_to_resolv_conf: Add support for IPv6
    - resume: only resume when the partition contains a resume image
    - Fix resuming a hibernate session from a swapfile
    - scripts/functions: by default, when setting up networking, use dhclient
      if we're asked to do DHCP explicitly, or if we otherwise are expected to
      do things automatically.
    - split out IPv6 options in its own cmdline parameter: ip6= ; always use
      dhclient in this case if the value set is anything other than 'off' or
      'none'. Furthermore, parse anything other than 'on', 'dhcp' or 'any' as
      the name of an interface.
    - rework the stop conditions so that we properly handle the ROUNDTTT loop,
      timing out after a short period of time and trying again after a short
      sleep.
    - add a 'done' parameter for both ip= and ip6= so that we can properly
      exit the ROUNDTTT loop once we know that either there is no work to do,
      or that we've achieved what we wanted (that is, to bring up IPv4, IPv6,
      or possibly both).
    - Just let dhclient scan the interfaces if none is specified for IPv6.
      (previously unnoted)
    - Do not handle ip=rarp specially (ipconfig hasn't supported it for some
      time)
    - Call dhclient in simple cases for IPv4 (this makes some small observable
      changes -- for example ip=bootp will now make a DHCP request too -- but
      nothing that seems important).
    - Do not let dhclient processes hang around past the pivot and have them
      respect the shorter timeouts ipconfig was given.
    - hook-functions, mkinitramfs, scripts/functions: support usage of dns
      after configure_networking.
    - Add unit tests for DNS support
    - scripts/functions: write netplan config files to /run/netplan for
      network devices configured with configure_networking.
    - Adjust testsuite for correct expected netplan output.
    - Add tests to parse netplan.yaml with netplan generate.
    - scripts/functions: include a new option to skip enslaved network
      devices.
    - Auto activate qeth devices on s390x hosts, when using ip= ip6= command
      lines.
    - Add support for creating VLANs via vlan=eth0.1:eth0 on kernel
      commandline, and as VLAN= conf.d snippet.
    - Emit empty dictionary in the ethernets section, for static vlan configs
      without any matches, as otherwise it is invalid config.
    - Skip attempting to chzdev enable VLAN device
    - Work out the kernel modules required to support ZFS filesystems and add
      them as necessary.
    - Add modules for nvme path components on multipath nvme.
    - Drop usage of klibc-utils' fstype in favor of always using udev blkid.
    - Use set -a/+a around loading conf snippets, to autoexport hook
      configuration variables. This thus allows packaged hooks to configure
      each other.
    - Fix PATH to include /usr/local.
    - Fix resume failure due to resume=UUID=... in certain cases
    - Always mount loop-mount filesystems read-write; ntfs-3g and vfat can't
      remount yet.
    - Provide a clearer error on mount failure of the Windows host filesystem
    - scripts/local: Re-execute cryptroot local-block script.
    - Force copy pthread and libgcc_s libraries via a stub binary. To avoid
      circular shared library dependencies between compiler and libc,
      libpthreads chooses to dlopen libgcc_s, instead of linking against it.
      However, we have no way to parse/know what it needs. And even when we
      hardcode to include libgcc_s1, we don't have a way to know which
      libgcc_s1 is needed on a given system and from which path to include it.
      But there is a hook-function to copy a binary and all of its shared
      library dependencies. Thus create a stub empty executable, with shared
      linking against pthreads and gcc_s1 and always include it in the initrd.
      This way at initrd creation time, ldd is used to correctly resolve these
      shared library dependencies and correctly copy them into the initrd.
      This removes hardcoding paths as to where these libraries must be copied
      from on the host.
    - Lower the compression levels for zstd and lz4 Following the discussion
      on the mailing list, we have reached a conclusion to lower the default
      compression levels:
      - For lz4, the compression level is lowered to 2 from 9
      - For zstd, the compression level is lowered to 1 from 9
    - Include dax and nfit modules, also needed for pmem devices.
    - Add char/hw_random drivers
    - Reinstate build-time shellcheck (but leave shellcheck out of
      autopkgtests as per debian bug #992798)
    - Bring up networking if ip6 is specified on cmdline.
    - Add qemu-net-dnsmasq autopkgtest to test DHCPv6
    - test: Ignore remaining systemd-udevd processes
    - Replace dhclient by dhcpcd
    - scripts/functions: do not fail to configure networking too quickly. In
      particular make sure an unsuccessful attempt to run DHCP takes at least
      $ROUNDTTT seconds.
    - Install intel_lpss_pci and spi_pxa2xx_platform kernel modules for keyboard
      on MacBook Pro 2017
    - Install surface_aggregator_registry for keyboard on Surface Laptop 4
    - Restore nvdimm and dax pmem-related modules
    - configure_networking:
      - Increase minimum timeout to 30 seconds
      - Fix configuring BOOTIF when using iSCSI
      - Set interface MTU if provided by the DHCP server
    - autopkgtest: Test hostname already set in initrd
    - resume: always write valid resume device to /sys/power/resume
    - persist hostname provided by DHCP only if not set yet
    - configure_networking: Configure IPv4 or IPv6 based on iBFT IP address
    - test: skip failing qemu-net-iscsi on arm64
    - Add iBFT test cases to qemu-net-iscsi autopkgtest
    - scripts/functions: gateway4/gateway6 are depreated in netplan config,
      generate routes instead
    - autopkgtest: Ignore unmkinitramfs warning on stderr to work around
      regression https://bugs.debian.org/1107592
    - Let linux-firmware updates trigger the initramfs-tools autopkgtest
  * Support 3cpio and prefer 3cpio over cpio
  * Drop supporting cpio and rely on 3cpio

initramfs-tools (0.150) unstable; urgency=medium

  [ Benjamin Drung ]
  * [a6efee9] autopkgtest: replace qemu-kvm by qemu-system-native
  * [e1d0775] Revert "Avoid updating the initramfs twice for some cases"
    (Closes: #1108204)
  * [27544d4] update-initramfs: move "set -e" to the beginning
  * [afb3ba3] update-initramfs: use "set -u"
  * [f0c9c42] update-initramfs: add copyright information

  [ E Shattow ]
  * [d656783] hook-functions: Add Cadence USB driver to base (Closes:
    #1108924)

  [ Askar Safin ]
  * [7a9c2a0] hook-functions: add modules for non-default checksums on
    btrfs

  [ Ben Hutchings ]
  * [9fa9ae0] unmkinitramfs: Accept lower-case hex digits in cpio headers

Date: Tue, 16 Sep 2025 11:27:35 +0200
Changed-By: Benjamin Drung <bdrung at ubuntu.com>
Maintainer: Ubuntu Developers <ubuntu-devel-discuss at lists.ubuntu.com>
https://launchpad.net/ubuntu/+source/initramfs-tools/0.150ubuntu2
-------------- next part --------------
Format: 1.8
Date: Tue, 16 Sep 2025 11:27:35 +0200
Source: initramfs-tools
Built-For-Profiles: noudeb
Architecture: source
Version: 0.150ubuntu2
Distribution: questing
Urgency: medium
Maintainer: Ubuntu Developers <ubuntu-devel-discuss at lists.ubuntu.com>
Changed-By: Benjamin Drung <bdrung at ubuntu.com>
Closes: 1108204 1108924
Changes:
 initramfs-tools (0.150ubuntu2) questing; urgency=medium
 .
   * Revert making 3cpio the default cpio tool since it is too late for the
     questing release cycle.
 .
 initramfs-tools (0.150ubuntu1) questing; urgency=medium
 .
   * Merge with Debian unstable. Remaining changes:
     - Use 3cpio for unmkinitramfs/lsinitramfs if available (for massive speedup)
       and let initramfs-tools-core suggest 3cpio
     - Harmonize kernel module installation with dracut's behavior:
       - Do not install ARM/RISCV specific modules on other architectures.
     - Revert "autopkgtest: Fix test failure when built-in drivers request
       firmware". This workaround is not needed on Ubuntu.
     - support mounting of loopback devices via loop*= parameters
     - Add vfat and nls modules to the initramfs.
     - Drop hooks/keymap, scripts/init-top/keymap, and associated code;
       console-setup takes care of this in Ubuntu.
     - Allow scripts and hooks to specify OPTION=VAR, and unless VAR is set to
       something other than "n", the script will not be included.
     - Add a new wait-for-root binary to the initramfs-tools-bin package that
       uses libudev to wait for udev to create the udev device, or wait for
       udev to finish processing if we catch it in the act, and returns the
       filesystem type as already probed by udev.
     - Automatically blacklist vga16fb when vga= or video= specified on kernel
       command-line.
     - Add hwaddr= alias for BOOTIF= for compatibility.
     - Set hostname at boot, for the benefit of mdadm autoassembly.
     - Add Hyper-V paravirtualised device drivers to the initramfs to allow
       booting of stock images in a Hyper-V guest.
     - ppc64el: enable PowerPC NX Crypto Coprocessor
     - Add support for uppercase and lowercase uuids.
     - Make busybox-initramfs a real runtime dependency, fixing kernel install
       failures with cryptsetup
     - init: Don't interpret "rootdelay" as a static sleep.
     - scripts/local: Let rootdelay determine the wait-for-root timeout.
     - Increase rootdelay to 180s on powerpc/ppc64/ppc64el
     - Support roottimeout= as the authoritative name for rootdelay= since the
       Ubuntu interpretation of rootdelay is *not* a delay and this causes
       inconsistent behavior depending on whether the kernel or an initramfs is
       interpreting it.
     - Revised mountroot failure support.  This is now deprecated and
       effectively removed.  However, to prevent breakage in other packages the
       add_mountroot_fail_hook function is still present as an empty stub.
     - Add a new 'fixrtc' script that tries to set the system clock forward
       based on the last mount time of the root disk; without this kludge,
       systems without a working RTC will end up in a perpetual reboot loop.
     - Restore the framebuffer hook and script, copying KMS and other
       framebuffer drivers into the initramfs, but make them optional; you need
       to set FRAMEBUFFER=y for these to be included.
     - netinfo_to_resolv_conf: Add support for IPv6
     - resume: only resume when the partition contains a resume image
     - Fix resuming a hibernate session from a swapfile
     - scripts/functions: by default, when setting up networking, use dhclient
       if we're asked to do DHCP explicitly, or if we otherwise are expected to
       do things automatically.
     - split out IPv6 options in its own cmdline parameter: ip6= ; always use
       dhclient in this case if the value set is anything other than 'off' or
       'none'. Furthermore, parse anything other than 'on', 'dhcp' or 'any' as
       the name of an interface.
     - rework the stop conditions so that we properly handle the ROUNDTTT loop,
       timing out after a short period of time and trying again after a short
       sleep.
     - add a 'done' parameter for both ip= and ip6= so that we can properly
       exit the ROUNDTTT loop once we know that either there is no work to do,
       or that we've achieved what we wanted (that is, to bring up IPv4, IPv6,
       or possibly both).
     - Just let dhclient scan the interfaces if none is specified for IPv6.
       (previously unnoted)
     - Do not handle ip=rarp specially (ipconfig hasn't supported it for some
       time)
     - Call dhclient in simple cases for IPv4 (this makes some small observable
       changes -- for example ip=bootp will now make a DHCP request too -- but
       nothing that seems important).
     - Do not let dhclient processes hang around past the pivot and have them
       respect the shorter timeouts ipconfig was given.
     - hook-functions, mkinitramfs, scripts/functions: support usage of dns
       after configure_networking.
     - Add unit tests for DNS support
     - scripts/functions: write netplan config files to /run/netplan for
       network devices configured with configure_networking.
     - Adjust testsuite for correct expected netplan output.
     - Add tests to parse netplan.yaml with netplan generate.
     - scripts/functions: include a new option to skip enslaved network
       devices.
     - Auto activate qeth devices on s390x hosts, when using ip= ip6= command
       lines.
     - Add support for creating VLANs via vlan=eth0.1:eth0 on kernel
       commandline, and as VLAN= conf.d snippet.
     - Emit empty dictionary in the ethernets section, for static vlan configs
       without any matches, as otherwise it is invalid config.
     - Skip attempting to chzdev enable VLAN device
     - Work out the kernel modules required to support ZFS filesystems and add
       them as necessary.
     - Add modules for nvme path components on multipath nvme.
     - Drop usage of klibc-utils' fstype in favor of always using udev blkid.
     - Use set -a/+a around loading conf snippets, to autoexport hook
       configuration variables. This thus allows packaged hooks to configure
       each other.
     - Fix PATH to include /usr/local.
     - Fix resume failure due to resume=UUID=... in certain cases
     - Always mount loop-mount filesystems read-write; ntfs-3g and vfat can't
       remount yet.
     - Provide a clearer error on mount failure of the Windows host filesystem
     - scripts/local: Re-execute cryptroot local-block script.
     - Force copy pthread and libgcc_s libraries via a stub binary. To avoid
       circular shared library dependencies between compiler and libc,
       libpthreads chooses to dlopen libgcc_s, instead of linking against it.
       However, we have no way to parse/know what it needs. And even when we
       hardcode to include libgcc_s1, we don't have a way to know which
       libgcc_s1 is needed on a given system and from which path to include it.
       But there is a hook-function to copy a binary and all of its shared
       library dependencies. Thus create a stub empty executable, with shared
       linking against pthreads and gcc_s1 and always include it in the initrd.
       This way at initrd creation time, ldd is used to correctly resolve these
       shared library dependencies and correctly copy them into the initrd.
       This removes hardcoding paths as to where these libraries must be copied
       from on the host.
     - Lower the compression levels for zstd and lz4 Following the discussion
       on the mailing list, we have reached a conclusion to lower the default
       compression levels:
       - For lz4, the compression level is lowered to 2 from 9
       - For zstd, the compression level is lowered to 1 from 9
     - Include dax and nfit modules, also needed for pmem devices.
     - Add char/hw_random drivers
     - Reinstate build-time shellcheck (but leave shellcheck out of
       autopkgtests as per debian bug #992798)
     - Bring up networking if ip6 is specified on cmdline.
     - Add qemu-net-dnsmasq autopkgtest to test DHCPv6
     - test: Ignore remaining systemd-udevd processes
     - Replace dhclient by dhcpcd
     - scripts/functions: do not fail to configure networking too quickly. In
       particular make sure an unsuccessful attempt to run DHCP takes at least
       $ROUNDTTT seconds.
     - Install intel_lpss_pci and spi_pxa2xx_platform kernel modules for keyboard
       on MacBook Pro 2017
     - Install surface_aggregator_registry for keyboard on Surface Laptop 4
     - Restore nvdimm and dax pmem-related modules
     - configure_networking:
       - Increase minimum timeout to 30 seconds
       - Fix configuring BOOTIF when using iSCSI
       - Set interface MTU if provided by the DHCP server
     - autopkgtest: Test hostname already set in initrd
     - resume: always write valid resume device to /sys/power/resume
     - persist hostname provided by DHCP only if not set yet
     - configure_networking: Configure IPv4 or IPv6 based on iBFT IP address
     - test: skip failing qemu-net-iscsi on arm64
     - Add iBFT test cases to qemu-net-iscsi autopkgtest
     - scripts/functions: gateway4/gateway6 are depreated in netplan config,
       generate routes instead
     - autopkgtest: Ignore unmkinitramfs warning on stderr to work around
       regression https://bugs.debian.org/1107592
     - Let linux-firmware updates trigger the initramfs-tools autopkgtest
   * Support 3cpio and prefer 3cpio over cpio
   * Drop supporting cpio and rely on 3cpio
 .
 initramfs-tools (0.150) unstable; urgency=medium
 .
   [ Benjamin Drung ]
   * [a6efee9] autopkgtest: replace qemu-kvm by qemu-system-native
   * [e1d0775] Revert "Avoid updating the initramfs twice for some cases"
     (Closes: #1108204)
   * [27544d4] update-initramfs: move "set -e" to the beginning
   * [afb3ba3] update-initramfs: use "set -u"
   * [f0c9c42] update-initramfs: add copyright information
 .
   [ E Shattow ]
   * [d656783] hook-functions: Add Cadence USB driver to base (Closes:
     #1108924)
 .
   [ Askar Safin ]
   * [7a9c2a0] hook-functions: add modules for non-default checksums on
     btrfs
 .
   [ Ben Hutchings ]
   * [9fa9ae0] unmkinitramfs: Accept lower-case hex digits in cpio headers
Checksums-Sha1:
 6db98a9d1911e47eb41a9b794d5b0ea3b8342440 2390 initramfs-tools_0.150ubuntu2.dsc
 ebadb90051e146ab2dc29c05b6c8f54efc1ab476 162264 initramfs-tools_0.150ubuntu2.tar.xz
 2b47f5160e5ec32f51f75c5c4d6e573ec4863bd6 9222 initramfs-tools_0.150ubuntu2_source.buildinfo
Checksums-Sha256:
 d70b12cdac932e74e6be76ca0cc33f6bb5ef4f199d716d5b7c4a4bff0f39c2e8 2390 initramfs-tools_0.150ubuntu2.dsc
 e6aef3237b9799e3cd4dc32f6e81191e947b36396e5c3c97181723183450f3dc 162264 initramfs-tools_0.150ubuntu2.tar.xz
 87beb704e9a9106c6b2d022e1cf97faed6062954688a34fb45a712a5beededc3 9222 initramfs-tools_0.150ubuntu2_source.buildinfo
Files:
 1989e0dd77ffce66c0b2ed61e45e7487 2390 utils optional initramfs-tools_0.150ubuntu2.dsc
 e03d86217e0255407b5740cba05d4a2d 162264 utils optional initramfs-tools_0.150ubuntu2.tar.xz
 bb0e2324e65ee5789a429a21e0018d88 9222 utils optional initramfs-tools_0.150ubuntu2_source.buildinfo
Original-Maintainer: Debian kernel team <debian-kernel at lists.debian.org>
Vcs-Git: https://git.launchpad.net/~bdrung/ubuntu/+source/initramfs-tools
Vcs-Git-Commit: 08a63e173462edab963b0a892b63bdd99c2834cb
Vcs-Git-Ref: refs/heads/ubuntu/devel


More information about the Questing-changes mailing list