GRUB menu loading failure via HTTP Boot on BlueField

Bug #2043084 reported by Chengen Du
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
grub2-unsigned (Ubuntu)
Status tracked in Noble
Focal
New
Undecided
Mate Kukri
Jammy
In Progress
Undecided
Mate Kukri
Mantic
Invalid
Undecided
Mate Kukri
Noble
Triaged
Undecided
Mate Kukri

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.

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.

Related branches

Chengen Du (chengendu)
Changed in grub2 (Ubuntu):
assignee: nobody → Chengen Du (chengendu)
Revision history for this message
Julian Andres Klode (juliank) wrote :

Reassigning to boot engineering. BlueField seems to be arm64? I reassigned this to grub2-unsigned accordingly.

This is not something you should be touching yourselves, really.

Changed in grub2 (Ubuntu):
status: New → Triaged
assignee: Chengen Du (chengendu) → nobody
affects: grub2 (Ubuntu) → grub2-unsigned (Ubuntu)
Changed in grub2-unsigned (Ubuntu):
assignee: nobody → Mate Kukri (mkukri)
tags: added: foundations-todo
Revision history for this message
Chengen Du (chengendu) wrote :

Bluefield is arm64, and the patch has undergone successful testing.
I've already initiated a bug report in grub2-unsigned. Should this be marked as a duplicate?
The bug report is available at: https://bugs.launchpad.net/ubuntu/+source/grub2-unsigned/+bug/2043085.
Additionally, I'm inquiring whether I should provide the debdiff for this issue or await action from the boot engineering.

Revision history for this message
Julian Andres Klode (juliank) wrote :

Mate is merging the fixes with some others and we should have an update available in the next days.

Revision history for this message
Mate Kukri (mkukri) wrote (last edit ):

@chengendu https://code.launchpad.net/~mkukri/grub/+git/grub/+merge/455398 (sorry first MP had a typo'd branch name)

Revision history for this message
Julian Andres Klode (juliank) wrote :

Marking mantic as invalid because it doesn't have the http code yet, it may get it back with noble, in which case the bug will become fix comitted/released again to make it clear that the re-added network patch set has the fix.

Changed in grub2-unsigned (Ubuntu Jammy):
assignee: nobody → Julian Andres Klode (juliank)
assignee: Julian Andres Klode (juliank) → Mate Kukri (mkukri)
status: New → Fix Committed
status: Fix Committed → In Progress
Changed in grub2-unsigned (Ubuntu Mantic):
status: New → Invalid
Mate Kukri (mkukri)
Changed in grub2-unsigned (Ubuntu Focal):
assignee: nobody → Mate Kukri (mkukri)
Changed in grub2-unsigned (Ubuntu Mantic):
assignee: nobody → Mate Kukri (mkukri)
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.