[Bug 2043084] Re: GRUB menu loading failure via HTTP Boot on BlueField

Sebastian Weyer 2043084 at bugs.launchpad.net
Fri Nov 22 14:06:11 UTC 2024


I was investigating this issue because our customer had problems setting
up HTTPBoot with grub. I was aware of the duplicate of this bug here:
https://bugs.launchpad.net/ubuntu/+source/grub2-unsigned/+bug/2028891
until Mate pointed out earlier today that it was a known issue.

I tested version 2.06-2ubuntu14.6 of grub2-unsigned from this ppa:
https://launchpad.net/~ubuntu-uefi-team/+archive/ubuntu/proposed-
public/+packages which includes the patch to fix the error from this bug
and I can confirm that it is fixed with this version.

Afterwards I just added the patch `efinet-http-message-field-size.patch'
on top of version 2.06-2ubuntu7.1 (jammy branch) from this repository:
https://git.launchpad.net/~ubuntu-core-dev/grub/+git/ubuntu which I used
for testing and investigating the error and I am also able to
successfully run an iso installer with HTTP boot.

Even though I am able to successfully run HTTPBoot, I do get a couple
error messages regarding missing files. That might be an issue in my
setup. Here is the log:

>>Start HTTP Boot over IPv4....
  Station IP address is 192.168.111.10

  URI: http://192.168.111.1:80/grubnetaa64_test.efi
  File Size: 2404352 Bytes
  Downloading...100%error: file `/grub/arm64-efi/command.lst' not found.
error: file `/grub/arm64-efi/fs.lst' not found.
error: file `/grub/arm64-efi/crypto.lst' not found.
error: file `/grub/arm64-efi/terminal.lst' not found.
error: file `/grub/grubenv' not found.
...

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to grub2-signed in Ubuntu.
https://bugs.launchpad.net/bugs/2043084

Title:
  GRUB menu loading failure via HTTP Boot on BlueField

Status in grub2-signed package in Ubuntu:
  Fix Released
Status in grub2-unsigned package in Ubuntu:
  Fix Released
Status in grub2-signed source package in Focal:
  Fix Committed
Status in grub2-unsigned source package in Focal:
  Fix Committed
Status in grub2-signed source package in Jammy:
  In Progress
Status in grub2-unsigned source package in Jammy:
  In Progress
Status in grub2-signed source package in Mantic:
  Invalid
Status in grub2-unsigned source package in Mantic:
  Invalid
Status in grub2-signed source package in Noble:
  Fix Released
Status in grub2-unsigned source package in Noble:
  Fix Released

Bug description:
  [Impact]
  The GRUB menu fails to load via HTTP boot but functions properly with PXE boot, displaying the error message:
  error: Fail to send a request! status=0x8000000000000002.

  The error code 0x8000000000000002 corresponds to GRUB_EFI_INVALID_PARAMETER.
  Notably, this issue is unreproducible in QEMU but surfaces on BlueField.

  [Fix]
  Bisecting Oracle's patches, we confirmed with the customer that the issue was resolved with the following commit:
   https://github.com/rhboot/grub2/commit/205b7b44bb2a7911f1e8c1ce22d66c111a4b429e

  [Test Plan]
  We've requested the customer to test the patch on BlueField.
  Our test plan will focus on checking for any regressions after applying this patch and will include testing on machines in the Canonical hyperscale lab.

  1. Run a DHCP server on the host and configure /etc/dhcp/dhcpd.conf with the provided content.
  ...
  host http_boot {
    option host-name "http_boot";
    hardware ethernet XX:XX:XX:XX:XX:XX;
    fixed-address 192.168.122.10;
    class "HTTPClient" {
      match if substring (option vendor-class-identifier, 0, 10) = "HTTPClient";
      option vendor-class-identifier "HTTPClient";
      filename <-efi's path->;
    }
  }
  ...
  2. Start a UEFI VM and use "virsh console" for access.
  3. Execute "systemctl reboot --firmware-setup" in the console to enter the UEFI interface.
  4. Test the successful loading of the GRUB menu by selecting "Boot Manager" -> "UEFI HTTPv4."

  [Where problems could occur]
  The patch only updates a member variable type to comply with UEFI 2.9, preserving the original behavior.
  In QEMU, using EFI v2.70 from EDK II, we can still access the GRUB menu.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/grub2-signed/+bug/2043084/+subscriptions




More information about the foundations-bugs mailing list