** Description changed: + [ Impact ] + When compared to Ubuntu 23.10, creating intramfs files with update- initramfs takes 2 to 5 times more time on ARM devices. IIUC, dracut-install usage was added to initramfs-tools to speed up the process. But now its way slower. Even running update-initramfs on jammy, which doesn't use dracut-install, is way faster then the time taken on Noble. first bad commit - https://github.com/dracutdevs/dracut/commit/3de4c7313260fb600507c9b87f780390b874c870 + + Updating the initrd on a Raspberry Pi Zero 2W on Ubuntu 24.04 (noble) + with initramfs-tools 0.142ubuntu25.1 takes over six minutes: + + ``` + bdrung@zero2w:~$ sudo hyperfine --warmup 1 -r 10 "update-initramfs -u" + Benchmark 1: update-initramfs -u + Time (mean ± σ): 402.751 s ± 5.592 s [User: 166.316 s, System: 228.909 s] + Range (min … max): 394.380 s … 411.445 s 10 runs + ``` + + [ Test Plan ] + + 1. Measure `update-initramfs -u` before the update. + 2. Log the content of the initrd before the update: `lsinitramfs /boot/initrd.img` + 3. update dracut-install / initramfs-tools-core + 4. Measure `update-initramfs -u`. It should be faster (the performance improvements on amd64 should be very small and might be within the measurement uncertainty). + 5. Check with lsinitramfs that the content of the newly generated initrd hasn't changed. + + [ Where problems could occur ] + + The code that is responsible for including the kernel modules into the + initrd is touched. Negative consequences could be that some needed + kernel modules will not be included any more (should be covered by the + test case) or that building new initrds will fail. + + The initramfs-tools fix changes how manual_add_modules behaves. + `manual_add_modules` does not copy kernel modules, but queues them for + being copied when the newly added function `apply_add_modules` is + called. + + I checked all instances of calls to `manual_add_modules` for possible + regressions (see comment #15). Only miniramfs needs to be adjusted to + also call `apply_add_modules`. But this change could break consumers of + the `manual_add_modules` function that are outside of the Ubuntu + archive. I googled for `apply_add_modules` but found no public outside + users. + + [ Other Info ] $ lsb_release -rd No LSB modules are available. Description: Ubuntu 24.04 LTS Release: 24.04 $ apt-cache policy dracut-install dracut-install: Installed: 060+5-1ubuntu3 Candidate: 060+5-1ubuntu3 Version table: *** 060+5-1ubuntu3 500 500 http://ports.ubuntu.com/ubuntu-ports noble/main arm64 Packages 100 /var/lib/dpkg/status
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2065180 Title: performance regression in dracut-install 060 To manage notifications about this bug go to: https://bugs.launchpad.net/dracut/+bug/2065180/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs