Updated images after T8879 are still unable to boot on HyperV. The error message is gone and now it just shows a blank screen when I update.
If I try to boot the ISO, it gets stuck on the splash screen. Fail-safe mode doesn't make any difference.
| ctd | |
| May 28 2026, 10:01 PM |
| F116388365: image.png | |
| Jul 3 2026, 8:07 PM |
| F116134957: image.png | |
| May 29 2026, 6:32 PM |
| F116132039: image.png | |
| May 28 2026, 10:01 PM |
| F116132037: image.png | |
| May 28 2026, 10:01 PM |
Updated images after T8879 are still unable to boot on HyperV. The error message is gone and now it just shows a blank screen when I update.
If I try to boot the ISO, it gets stuck on the splash screen. Fail-safe mode doesn't make any difference.
Spent some time trying to chase this down. I managed to set up a VM to build the VyOS image, but I can't figure out how to build the kernel. The docs appear to be outdated?
I did chase down the kernel config differences between an older working version and the current versions by booting a recent ISO in VMWare.
It looks like CONFIG_HYPERV_PCI, CONFIG_HYPERV_PCI_INTERFACE, and CONFIG_HYPERV_VTL_MODE are missing, and CONFIG_HYPERV changed from built in to a module.
If anyone can point me to working instructions to build the kernel, I'd be happy to try and figure out a fix.
At least google AI tells me this:
In the Linux kernel, CONFIG_HYPERV cannot be compiled as a module (it must be a strict boolean, y). It must be built directly into the kernel because it provides the foundational core hypervisor and CPU paravirtualization interfaces required to boot the guest virtual machine.
So this is most likely the issue.
The missing PCI configs will probably cause SR-IOV to not work, so those are likely needed too.
Just guessing.
Since this really isnt needed on anything other than when being runned as a VM in HyperV (and there are probably not many that do that today compared to KVM (Proxmox et al) and VMware or even XCP-NG) this have been removed from the main rolling release and is only available precompiled for LTS-customers who can download a HyperV image (similar to OVA image which I think contains "Open VM Tools")?
But I think you should still be able to build your own rolling-release.
Back in the days there existed more flavours to compile on your own over at:
https://github.com/vyos/vyos-build/commits/rolling/data/build-flavors
Current kernel config available at:
These currently exists:
CONFIG_HYPERV=y
CONFIG_HYPERV_VTL_MODE=y
But these are missing:
CONFIG_HYPERV_PCI
CONFIG_HYPERV_PCI_INTERFACE
But are the missing ones above valid for Kernel 6.6.93 which the config seems to have been created for?
Probably just someone who missed to update the header since the Stream 2026.03 is at 6.6.128 so the rolling is much newer than that.
According to:
https://www.kernelconfig.io/CONFIG_PCI_HYPERV
https://www.kernelconfig.io/CONFIG_PCI_HYPERV_INTERFACE
the kernel config options have been around for some time.
Or are they different from CONFIG_HYPERV_PCI and CONFIG_HYPERV_PCI_INTERFACE mentioned earlier?
So perhaps whoever is maintaining the kernel config should do a "resync" so next update includes ALL currently available options and not just the ones who have been touched through menuconfig?
This way it will be much clearer of which variables are commented out (and by that use its default value) vs. which variables have been altered from default. Instead of as today where some variables seems to be completely missing from the kernel config used by VyOS?
Digging in /boot/config-6.6.128-vyos I can find the missing values:
CONFIG_HYPERV=m # CONFIG_HYPERV_VTL_MODE is not set CONFIG_PCI_HYPERV=m CONFIG_PCI_HYPERV_INTERFACE=m
Also the error you see with just a blank screen seems like console is outputed to some (virtual) serialcable instead?
Because grub itself is not related to which (compiled in) modules the Linux kernel got?