MaaS fails to boot Hyper-V Generation 2 virtual machines
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
MAAS |
Invalid
|
Undecided
|
Unassigned | ||
grub2 (Ubuntu) |
Fix Released
|
High
|
Mathieu Trudel-Lapierre | ||
Xenial |
Fix Released
|
High
|
Mathieu Trudel-Lapierre | ||
grub2-signed (Ubuntu) |
Fix Released
|
High
|
Unassigned | ||
Xenial |
Fix Released
|
High
|
Mathieu Trudel-Lapierre |
Bug Description
[Impact]
When trying to deploy a "Generation 2" virtual machine on Hyper-V, grub fails to fetch the linux kernel and initrd from MaaS. The operation times out immediately, because the Generation 2 VMs are missing the Programmable Interval Timer (PIT). The current version of grub still requires this interface to exist, in order to calculate time.
[Test case]
Attempt to boot a Generation 2 Hyper-V system from MAAS.
[Regression potential]
Since this changes the way timers are picked and used in grub, this may cause things depending on timers (timeout for various features, timeout for the GRUB menu, waiting for keyboard input to get in the menu) may be affected. Any wrong behavior in keyboard input validation for getting into the grub menu on boot should be considered a regression on this patch.
---
There is a patch that uses the EFI SetTimer() available here:
http://
and an alternative in the discussion here:
https:/
that uses pmtimer instead. I am aware that grub is a critical package. What is the official/proper way to fix this issue? Can a patched grubnetx64.efi be packaged with MaaS? Do we have to wait for this fix to merge?
Gabriel
tags: | added: kernel-da-key |
Changed in grub2 (Ubuntu): | |
status: | Incomplete → Confirmed |
Changed in grub2 (Ubuntu): | |
status: | Confirmed → In Progress |
importance: | Undecided → High |
assignee: | nobody → Mathieu Trudel-Lapierre (cyphermox) |
Changed in grub2-signed (Ubuntu): | |
status: | New → Fix Released |
importance: | Undecided → High |
Changed in grub2 (Ubuntu Xenial): | |
importance: | Undecided → High |
Changed in grub2-signed (Ubuntu Xenial): | |
importance: | Undecided → High |
Changed in grub2 (Ubuntu Xenial): | |
status: | New → In Progress |
Changed in grub2-signed (Ubuntu Xenial): | |
status: | New → In Progress |
Changed in grub2 (Ubuntu Xenial): | |
assignee: | nobody → Mathieu Trudel-Lapierre (cyphermox) |
Changed in grub2-signed (Ubuntu Xenial): | |
assignee: | nobody → Mathieu Trudel-Lapierre (cyphermox) |
description: | updated |
Hi Gabriel,
MAAS never officially supported booting HyperV VM's, but thank you for letting us know that this was the case.
That being said, this is not bug in MAAS but it is a bug in grub. I'll retarget this appropriately.
Thanks.