bhyve virtio boot disk in Windows?

zizzithefox

Dabbler
Joined
Dec 18, 2017
Messages
41
How about using nvme as backend? bhyve on FreeBSD 12.1 can use nvme as controller.
NVME backend isn't supported by Truenas yet, as you cannot select it as a backend for virtual disks (being either files or zdev). Passing through a PCI-e controller is not a solution since I assume you want to boot from it, so.
It should be addressed because NVME emulation might bring performance gains on Windows machines particularly even when the virtual disk is hosted on spinning disks, because of its simplicity with respect to AHCI or SCSI.
 

zizzithefox

Dabbler
Joined
Dec 18, 2017
Messages
41
As a follow-up on this, I got the VM to boot with all virtio again :cool: All the "fix boot problems" guides didn't really help, the straight forward solution is arguably simple:

1. create another empty zvol
2. add this zvol as a virtio disk to your VM
3. boot, open drive management, initialize the new zvol as a new drive (mine are GPT, so I chose GPT)
4. reboot to make sure it is still working
5. shut the VM down
6. edit the boot disk to virtio
7. start the VM again - should come up after a while. I verified it with a web-VNC connected. W10 seems to change some things due to the hardware change. Shut it down again.
8. Remove the additional zvol and all other devices you don't need. Start it up again.
9. Clean up the registry, the usual stuff. Do a snapshot.

I am not quite sure what happens, but the additional virtio drive seems to ensure that the driver is actually loaded and accessible when the shift-over from ex-AHCI to virtio happens and is changed in the registry/whatever. So... a workaround.

Well, that is more or less the quickest procedure that I have always applied when I wanted to migrate a boot disk to paravirtual drivers in VMWARE in a Windows virtual machine, or to virtio in XCP-ng or bhyve. Unless you install from the beginning on virtio by providing drivers (which is NOT recommended with Virtio), that is pretty much the procedure, not a workaround.
 
Top