Skip to content

x86_64: Harmonize GRUB's behavior with that of U-Boot#14

Merged
troglobit merged 1 commit intomainfrom
wkz/x86-netboot
Apr 19, 2023
Merged

x86_64: Harmonize GRUB's behavior with that of U-Boot#14
troglobit merged 1 commit intomainfrom
wkz/x86-netboot

Conversation

@wkz
Copy link
Copy Markdown
Contributor

@wkz wkz commented Apr 19, 2023

This means that:

  • The full boot order is now respected, using the magic "fallback" varible in GRUB. This means that if an entry fails to load, we move on to the next one in the defined order.

  • Netbooting is supported. In this mode, GRUB will acquire an IP address using DHCP, after which it downloads an image using TFTP.

  • If we run out of valid entries, we always make sure to reboot. This ensures that, e.g., a temporary TFTP server outage does not cause an Infix device to get stuck in GRUB.

At the moment, the image handling is excruciatingly inefficient when netbooting, as the image is downloaded multiple times behind the scenes. Ideally, downloads would be cached, but a quick investigation indicates that an implementation of this would take more time than we can spare at the moment. Therefore, we settle for the working, though wasteful, implementation.

This means that:

- The full boot order is now respected, using the magic "fallback"
  varible in GRUB. This means that if an entry fails to load, we move
  on to the next one in the defined order.

- Netbooting is supported. In this mode, GRUB will acquire an IP
  address using DHCP, after which it downloads an image using TFTP.

- If we run out of valid entries, we always make sure to reboot. This
  ensures that, e.g., a temporary TFTP server outage does not cause an
  Infix device to get stuck in GRUB.

At the moment, the image handling is excruciatingly inefficient when
netbooting, as the image is downloaded multiple times behind the
scenes. Ideally, downloads would be cached, but a quick investigation
indicates that an implementation of this would take more time than we
can spare at the moment. Therefore, we settle for the working, though
wasteful, implementation.
Copy link
Copy Markdown
Contributor

@troglobit troglobit left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm, nice work!

@troglobit troglobit merged commit 09751fd into main Apr 19, 2023
@troglobit troglobit deleted the wkz/x86-netboot branch April 19, 2023 08:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants