[Bug 260178] bhyve: passthru makes ahci-hd boot fail

From: <bugzilla-noreply_at_freebsd.org>
Date: Thu, 03 Feb 2022 10:50:06 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=260178

mario felicioni <marietto2008@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |marietto2008@gmail.com

--- Comment #3 from mario felicioni <marietto2008@gmail.com> ---
I have your exact problem when I try to boot a linux / windows / freebsd guest
os installed physically on a sata or usb disk (it makes no difference) with
every version of bhyve (the corvin's bhyve and also bhyve present on freebsd
14,while the most updated version present on FreeBSD 13R the passthrough does
not start at all). So,I've created some cases to show you in a incontrovertible
way that the passthrough of any device (I tried with my nvidia geforce RTX 2080
ti and with my USB renesas controller),interferes with the booting of any OS
installed physically on the disks. it happens if I use virtio-blk and also
ahci-hd. If I use virtio-blk I have an additional problem,in addition to the
fact that the passthrough does not work,without passthrough,at some point the
VM can't load the root partition,while using ahci-hd it can).

case 1)

bhyve -S -c sockets=1,cores=2,threads=2 -m 4G -w -H \
-s 0,hostbridge \
-s 1,virtio-blk,/dev/da1 \
-s 2:0,passthru,2/0/0,rom=TU102.rom \
-s 31,lpc \
-l com1,stdio \                           
-l bootrom,/usr/local/share/uefi-firmware/BHYVE_BHF_CODE.fd \
vm1

= NO (da1 with freebsd 14 installed does not boot)

case 2)

bhyve -S -c sockets=1,cores=2,threads=2 -m 4G -w -H \
-s 0,hostbridge \
-s 1,virtio-blk,/dev/da1 \
-s 31,lpc \
-l com1,stdio \                           
-l bootrom,/usr/local/share/uefi-firmware/BHYVE_BHF_CODE.fd \
vm1

= yes.

case 3)

bhyve -s 0,hostbridge \
-s 1,virtio-blk,/dev/da1 \
-s 31,lpc \
-l com1,stdio \
-l bootrom,/usr/local/share/uefi-firmware/BHYVE_BHF_CODE.fd \
vm1

= yes

case 4)

bhyve -S -s 0,hostbridge \
-s 1,virtio-blk,/dev/da1 \
-s 31,lpc \
-l com1,stdio \
-l bootrom,/usr/local/share/uefi-firmware/BHYVE_BHF_CODE.fd \
vm1

= yes

case 5)

bhyve -S -s 0,hostbridge \
-s 1,virtio-blk,/dev/da1 \
-s 2:0,passthru,2/0/0,rom=TU102.rom \
-s 31,lpc \
-l com1,stdio \
-l bootrom,/usr/local/share/uefi-firmware/BHYVE_BHF_CODE.fd \
vm1

= no

-- 
You are receiving this mail because:
You are the assignee for the bug.