Hello,

I have a deployment that looks like the following:

- Linux Hypervisor host (KVM backed)
- QEMU emulator version 9.2.0
- 6.13.6-arch1-1

I have successfully passed through a NIC  in the past (NetXtreme BCM5720) with 
the following method:

- Map Vendor/Product ID to vfio
- ensure card is owned by vfio-pci driver
- passthrough via qemu script

For some odd reason, this connects 4-LX is not working with two interesting 
side effects depending what I passthrough. 

Scenario 1 - Passthrough physical port
——
When I passthrough a physical port, I receive the following in startup:
mcx0 at pci2 dev 0 function 0 "Mellanox ConnectX-4 Lx" rev 0x00: unable to map 
register memory

I am assuming that I am failing this check:

https://github.com/openbsd/src/blob/bda32853b08c72fc3eb0808fd3758afa7c71d447/sys/dev/pci/if_mcx.c#L2756C2-L2764C1https://github.com/openbsd/src/blob/bda32853b08c72fc3eb0808fd3758afa7c71d447/sys/dev/pci/if_mcx.c#L2756C2-L2764C1

I attempted to use UKC prompt to map memory with no success.


Scenario 2 -  Passthrough virtual function
—
When I passthrough a virtual function, startup output shows the virtual 
function and the NIC, but I fail to get any connectivity despite carrier saying 
active. When I use the same method to passthrough VFs, on Linux guests, this 
works! It is only OpenBSD that is impacted.

I would ideally like to get BOTH of these methods of passthrough working. I 
have had issues with qemu and OpenBSD in the past, so I can test various 
versions, kernels, and alternate methods. Any assistance would be appreciated. 
Thank you!


- Max Power

Reply via email to