On 1/20/24 09:03, Paul B. Henson wrote:
We've been running Debian 11 for a while, using sr-iov:
<network>
<name>sr-iov-intel-10G-1</name>
<uuid>6bdaa4c8-e720-4ea0-9a50-91cb7f2c83b1</uuid>
<forward mode='hostdev' managed='yes'>
<pf dev='eth2'/>
</forward>
</network>
and allocating vf's from the pool:
<interface type='network' trustGuestRxFilters='yes'>
<mac address='52:54:00:08:da:5b'/>
<source network='sr-iov-intel-10G-1'/>
<vlan>
<tag id='50'/>
</vlan>
<model type='virtio'/>
<address type='pci' domain='0x0000' bus='0x00'
slot='0x03' function='0x0'/>
</interface>
After upgrading to Debian 12, when I try to start any vm which uses the
trustGuestRxFilters option, it fails to start with the message:
error: internal error: unable to execute QEMU command 'query-rx-filter':
invalid net client name: hostdev0
I think it may be a regression caused by the following commit:
https://gitlab.com/libvirt/libvirt/-/commit/060d4c83ef436cf56abfad51a4d64...
(contained in libvirt-8.9.0)
In two functions (qemuProcessRefreshState() and qemuProcessReconnect())
there's a call to qemuProcessRefreshRxFilters() added. And since you
have trustGuestRxFilters='yes' it then proceeds and queries QEMU on the
monitor for MAC address.
Let me see if I can cook up a patch, since I'm the one who broke it.
Michal