[Bug 2007827] Re: [SRU] flash-kernel failure when upgrading f-k and kernel in the same cycle

Robie Basak 2007827 at bugs.launchpad.net
Wed Jun 28 09:05:03 UTC 2023


I very much appreciate Dave's work here, and Steve's input. It seems
that we don't yet have consensus on the right way to fix this though? I
think Dave's fix is currently in the SRU queue in Kinetic but blocked on
consensus then, so setting that bug task to Incomplete.

satmandu's comments 12 and 13 also need addressing please. I'm not sure
if using external kernel packages is something we'd support in Ubuntu,
and perhaps we wouldn't consider this a regression, but if we're going
to knowingly break them in an SRU, we should document that.

-- 
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