Xen with libvirt and SR-IOV

Jim Fehlig jfehlig at suse.com
Tue Apr 4 02:44:49 UTC 2023

On 3/24/23 09:22, nospam at godawa.de wrote:
> Hi Jim,
> thank you very much for your answers!
> Unfortunately I was busy with some other things, so couldn't look at it earlier.
>> That's an old libvirt, but there hasn't been a lot of changes to the PCI 
>> passthrough code. One notable change that came with libvirt 6.8.0
>> https://gitlab.com/libvirt/libvirt/-/commit/9d15647dcb96831c93ac8c1d67c47265b5ed9072
>> However, that wouldn't be needed unless you were using the 'permissive' 
>> setting in your xl config.
> I see, current version is somewhere at 9.x. But I'm not sure, if it's possible 
> to upgade the servers to a new version of libvirt, I assume, that I also would 
> have to upgrade Xen to the latest version.
>>>> I know it's not complete, but https://libvirt.org/formatdomain.html makes an 
>>>> attempt to identify hypervisor support for the various configuration settings.
> I found this:
> "if you are using a version of libvirt older than 0.9.11, you should use 
> standard <hostdev> to assign the device to the guest instead of <interface 
> type='hostdev'/>."
> I think that 6.6 is newer than 0.9.11? Or do I have 0.6.6 in real?

You have 6.6.0, which is much newer than 0.9.11 :-).

>> Ah, xen-pciback is already bound to the device, so no need for managed='yes' 
>> in your device config. The 'managed' attribute tells libvirt whether or not to 
>> manage attaching/detaching drivers to/from the device. If you've done that 
>> elsewhere, set managed='no', or simply drop the attribute since 'no' is the 
>> default. It's explained in the 'pci' attribute of the hostdev element
>> https://libvirt.org/formatdomain.html#usb-pci-scsi-devices
> I set this to "no", as you expected it didn't changed anything.
>> Are there any errors from xen-pciback in dom0, or any hints in the output of 
>> 'xl dmesg'? Also, it might be worth comparing the relevant nodes in the output 
>> of xenstore-ls between VM started with xl and libvirt.
> I already had compared some informations between XL and libvirt, see my very 
> first message. Unfortunately there are no errors in the logs, it's just not 
> working.

I may have missed it, but I don't see that you checked the output of xenstore-ls 
and 'xl list --long <vm-name>'. Can you compare the output of those commands 
when the VM is started with xl and with libvirt?


More information about the libvirt-users mailing list