[Bug 2007827] Re: [SRU] flash-kernel failure when upgrading f-k and kernel in the same cycle
Steve Langasek
2007827 at bugs.launchpad.net
Fri Jul 7 21:20:35 UTC 2023
Unfortunately, subscribing Andy and Dimitri hasn't elicited a reply from
the Kernel Team on this. And as there are outstanding
design/architecture questions, I don't think it's appropriate for us to
land this SRU as-is. I'm going to reject the upload from the queue so
the SRU team can stop polling it and leave it with you, Dave, to chase
the Kernel Team to get consensus here.
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to flash-kernel in Ubuntu.
https://bugs.launchpad.net/bugs/2007827
Title:
[SRU] flash-kernel failure when upgrading f-k and kernel in the same
cycle
Status in flash-kernel package in Ubuntu:
Fix Released
Status in flash-kernel source package in Focal:
New
Status in flash-kernel source package in Jammy:
New
Status in flash-kernel source package in Kinetic:
Incomplete
Status in flash-kernel source package in Lunar:
Fix Released
Bug description:
[Impact]
In version 3.104ubuntu15 of flash-kernel, when both f-k and the kernel are upgraded in the same cycle, depending on the ordering of dpkg trigger execution, f-k may find the content of /boot "inconsistent" causing it to fail and return error exit status 1.
Erorr message:
Processing triggers for man-db (2.10.2-1) ...
Processing triggers for flash-kernel (3.104ubuntu15) ...
flash-kernel: installing version 5.15.0-1018-xilinx-zynqmp
Initrd required for FIT method
dpkg: error processing package flash-kernel (--configure):
installed flash-kernel package post-installation script subprocess returned error exit status 1
Processing triggers for linux-image-5.15.0-1018-xilinx-zynqmp (5.15.0-1018.20) ...
/etc/kernel/postinst.d/initramfs-tools:
update-initramfs: Generating /boot/initrd.img-5.15.0-1018-xilinx-zynqmp
flash-kernel gets the latest kernel version by "linux-version list".
When flash-kernel was triggered to generate fitimage, the kernel version is "5.15.0-1018" and the initrd for it wasn't ready. So, flash-kernel failed to generate the fitimage.
A subsequent run of "apt install -f" fixed things because, by that
point, the kernel's own trigger had executed, ensuring that update-
initramfs had been run. In the case that f-k is run "prematurely" and
finds itself in this situation (/boot/kernel-$[ver} exists, but
/boot/initrd-${ver}) doesn't), it should probably bail out silently
under the assumption that whatever is responsible for it will rectify
the situation and trigger f-k again (as happens in the kernel postinst
hooks).
[Test Case]
1. Flash an old image (with an out of date kernel and flash-kernel)
2. sudo apt-get update
3. sudo apt install flash-kernel with the fix and linux packages
4. Upgrade should proceed without issue
[Regression Potential]
As with the previous flash-kernel uploads, it is possible that a breakage in the changed code can lead to issues with upgrading kernels (due to f-k being executed via a trigger at the end) or with Xilinx devices in the field not upgrading correctly. I will test all the changes extensively though.
Related issues:
LP: #1861292 flash-kernel failure during kernel upgrade
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/flash-kernel/+bug/2007827/+subscriptions
More information about the foundations-bugs
mailing list