Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.debian.kernel > #88143

Bug#1108204: initramfs-tools: update-initramfs trigger does not update the initramfs in some cases

From Ben Hutchings <ben@decadent.org.uk>
Newsgroups linux.debian.bugs.dist, linux.debian.kernel
Subject Bug#1108204: initramfs-tools: update-initramfs trigger does not update the initramfs in some cases
Date 2025-06-25 17:10 +0200
Message-ID <L1zV7-d5mm-1@gated-at.bofh.it> (permalink)
References <L1zV7-d5mm-3@gated-at.bofh.it> <L1zV7-d5mm-3@gated-at.bofh.it>
Organization linux.* mail to news gateway

Cross-posted to 2 groups.

Show all headers | View raw


[Multipart message — attachments visible in raw view] - view raw

On Mon, 2025-06-23 at 09:19 +0200, Tobias Graemer wrote:
> Package: initramfs-tools
> Version: 0.148.2
> Severity: normal
> 
> Dear Maintainer,
> 
> When installing a kernel package and a package with a trigger for update-initramfs
> in one go, the update of the initramfs is skipped in some cases.
> 
> In a clean chroot, populated with debootstrap for "trixie", I ran
> 
>   apt install linux-image-amd64 plymouth-theme-mobian
> 
> Result:
> 
>   [...]
>   Setting up linux-image-6.12.32-amd64 (6.12.32-1) ...
>   I: /vmlinuz.old is now a symlink to boot/vmlinuz-6.12.32-amd64
>   I: /initrd.img.old is now a symlink to boot/initrd.img-6.12.32-amd64
>   I: /vmlinuz is now a symlink to boot/vmlinuz-6.12.32-amd64
>   I: /initrd.img is now a symlink to boot/initrd.img-6.12.32-amd64
>   /etc/kernel/postinst.d/initramfs-tools:
>   update-initramfs: Generating /boot/initrd.img-6.12.32-amd64
>   Setting up linux-image-amd64 (6.12.32-1) ...
>   Setting up plymouth-theme-mobian (1.1) ...
>   update-alternatives: using /usr/share/plymouth/themes/mobian/mobian.plymouth to provide /usr/share/plymouth/themes/default.plymouth (default.plymouth) in auto mode
>   Processing triggers for libc-bin (2.41-8) ...
>   Processing triggers for initramfs-tools (0.148.2) ...
>   update-initramfs: /boot/initrd.img-6.12.32-amd64 has already been updated since Mon Jun 23 06:07:09 2025.
[...]

I think what happens here is:

1. Another package is installed that calls "update-initramfs -u".  This
   activates the trigger, and we store a timestamp for it.
2. linux-image-6.12.32-amd64 is installed.  This calls the
   initramfs-tools hook which synchronously builds the initramfs.
3. plymouth-theme-mobian is installed.  This activates the trigger
   through a triggers control file.
4. The trigger runs and passes the timestamp from (1) through to
   update-initramfs.  update-initramfs sees the current image is newer
   than that, and skips the update.

I think we correctly handle the case where the trigger is only activated
through "update-initramfs -u", or only through a triggers control file
or direct invocation of dpkg-trigger.  But when both methods are used,
this bug is possible because a timestmap file is present and it is
wrong.

I propose to revert the optimised trigger handling until we can address
this.  (But I'm afraid that not be possible until dpkg itself records
timestamps for trigger activation.)

Ben.

-- 
Ben Hutchings
The most exhausting thing in life is being insincere.
                                                 - Anne Morrow Lindberg

Back to linux.debian.kernel | Previous | Next — Next in thread | Find similar | Unroll thread


Thread

Bug#1108204: initramfs-tools: update-initramfs trigger does not update the initramfs in some cases Ben Hutchings <ben@decadent.org.uk> - 2025-06-25 17:10 +0200
  Bug#1108204: initramfs-tools: update-initramfs trigger does not update the initramfs in some cases Benjamin Drung <bdrung@posteo.de> - 2025-06-26 18:40 +0200

csiph-web