← Back to team overview

group.of.nepali.translators team mailing list archive

[Bug 1900796] Re: Moonshot ProLiant m400 fails to boot "Wrong Ramdisk Image Format"

 

This bug was fixed in the package flash-kernel - 3.103ubuntu1~20.04.1

---------------
flash-kernel (3.103ubuntu1~20.04.1) focal; urgency=medium

  * Backport latest upstream version to groovy (LP: #1904890)
  * This includes Dann Frazier's workaround for LP: #1900796

 -- Dave Jones <dave.jones@xxxxxxxxxxxxx>  Tue, 12 Jan 2021 17:14:57
+0000

** Changed in: flash-kernel (Ubuntu Focal)
       Status: Fix Committed => Fix Released

-- 
You received this bug notification because you are a member of नेपाली
भाषा समायोजकहरुको समूह, which is subscribed to Xenial.
Matching subscriptions: Ubuntu 16.04 Bugs
https://bugs.launchpad.net/bugs/1900796

Title:
  Moonshot ProLiant m400 fails to boot "Wrong Ramdisk Image Format"

Status in ubuntu-kernel-tests:
  New
Status in flash-kernel package in Ubuntu:
  Fix Released
Status in plymouth package in Ubuntu:
  Invalid
Status in flash-kernel source package in Xenial:
  New
Status in plymouth source package in Xenial:
  Invalid
Status in flash-kernel source package in Bionic:
  Confirmed
Status in plymouth source package in Bionic:
  Invalid
Status in flash-kernel source package in Focal:
  Fix Released
Status in plymouth source package in Focal:
  Invalid
Status in flash-kernel source package in Groovy:
  Fix Released
Status in plymouth source package in Groovy:
  Invalid
Status in flash-kernel source package in Hirsute:
  Fix Released
Status in plymouth source package in Hirsute:
  Invalid

Bug description:
  [Impact]
  Due to a firmware (u-boot) bug in reading ext4 filesystems extents, ProLiant m400 systems may fail to boot after installing a new kernel. This seems to be exacerbated when there is limited free space on the /boot filesystem. HPE is no longer providing new firmware fixes for this platform.

  [Test Case]
  Install a new kernel and reboot. When this bug is triggered, you'll see the following errors (emphasis <<>> mine):

  ## Executing script at 4004000000
  11349894 bytes read in 312 ms (34.7 MiB/s)
  <<invalid extent block>>
  ## Booting kernel from Legacy Image at 4002000000 ...
     Image Name: kernel 5.8.0-25-generic
     Created: 2020-10-21 5:26:34 UTC
     Image Type: ARM Linux Kernel Image (gzip compressed)
     Data Size: 11349830 Bytes = 10.8 MiB
     Load Address: 00080000
     Entry Point: 00080000
     Verifying Checksum ... OK
  Wrong Ramdisk Image Format
  <<Ramdisk image is corrupt or invalid>>

  [Where Problems Could Occur]
  The workaround I've added here is to attempt to defrag the boot files so that the u-boot parsing bug is not triggered. This workaround is only activated for machines tagged with a certain property, and only the m400 server is tagged w/ that property. If there is a bug in detecting the platform or property, it could of course impact other platforms. Though it should be said that this code uses a well-established flash-kernel pattern. On the m400, the code only implements the workaround if /boot is on an ext4 filesystem (the Ubuntu default). If the filesystem detection code is buggy, we may unintentionally run e4defrag on a non-ext4 filesystem which could cause errors. Those errors currently only cause a warning to be printed - it does not fail the script. Users who miss this warning could still end up with an unbootable system if the workaround fails -- which it may, if the disk is very close to full. Long term, we should consider making this error fatal.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu-kernel-tests/+bug/1900796/+subscriptions