host doesn't support passtrough of host PCI devices

Hi,
I installed Open SuSe LEAP yesterday, I tried for hours now to make virtual manager working:
I found this link: http://ask.xmodulo.com/pci-passthrough-virt-manager.html

I added intel_iommu=on

# dmesg|grep -i IOMMU
    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-4.1.12-1-default root=UUID=9671a1ab-23fa-4e9f-a79d-92abf5009a62 ro resume=/dev/sda2 splash=silent quiet showopts intel_iommu=on
    0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.1.12-1-default root=UUID=9671a1ab-23fa-4e9f-a79d-92abf5009a62 ro resume=/dev/sda2 splash=silent quiet showopts intel_iommu=on
    0.000000] Intel-IOMMU: enable

I added the PCI device:

http://en.zimagez.com/miniature/screenshotfrom2015-12-0612-13-15.png](http://en.zimagez.com/zimage/screenshotfrom2015-12-0612-13-15.php)

I got this error:

http://en.zimagez.com/miniature/screenshotfrom2015-12-0612-12-55.png](http://en.zimagez.com/zimage/screenshotfrom2015-12-0612-12-55.php)

First,
You will always have to post complete details about your virtualization, we aren’t mind readers.

In your case, you only provide information that you’re running vm manager. Libvirt (which provides the basis for vm manager) supports about a dozen different virtualization technologies although on openSUSE you’re more likely to be running KVM, Xen or Docker if you installed using the YAST applet.

Secondly,
There is a very active current thread where another person has posted his references and the degree of success he has had doing what you’re attempting

https://forums.opensuse.org/showthread.php/511522-KVM-with-vga-passtrough

TSU

First…

…the link I pointed in my first post is clearly about KVM…

…Secondly…

…isn’t what I asked, if I use vm manager, it’s not to use something else! I don’t see the interest to use opensuse LEAP if I have to start to tweak at the first use… my interset in using suse, is to don’t have to use my time to tweak, othewerise I can stand with arch linux…

You need to read the Arch Wiki article and understand why the described convoluted invocation.
Read it carefully…
https://wiki.archlinux.org/index.php/PCI_passthrough_via_OVMF

Apparently there is a current issue, if KVM is used directly it causes a problem.

For awhile now KVM has merged and now supports another virtualization technology called QEMU. The integration was done for a number of reasons, but the relevance is that instead of invoking KVM directly, the described workaround is possible where a QEMU command with an option flag that activates KVM features can be invoked instead…

I assume that this enables mostly KVM functionality and features (particularly hardware assisted paravirtualization) so you wouldn’t see latency issues typical of regular full emulation QEMU while hiding the KVM label from the processes that seem to have issues.

So,
Whether you like this situation or not, AFAIK it’s likely the workaround is necessary until someone fixes the problem.

This is not something that is maintained by the openSUSE project (including LEAP). This is upstream, something the KVM and kernel maintainers will have to look at.

TSU

It’s usual to get issues, I’ll wait the fix, I just hope it won’t take months… Because, again, my real interest of suse, it’s to use it in production without having to compile stuffs my self and editing everything all around with vi…

Your question prompted me to consider whether it’d be possible to use vm manager to manage a QEMU domain instead of a KVM domain.

Because the same libvirt driver is used to support both KVM and QEMU, I don’t think the same procedure would be used to configure support for other virtualization technologies.

But, the online libvirt documentation has something that appears to be relevant, the procedure is to configure an XML file describing the QEMU domain
https://libvirt.org/drvqemu.html

Once configured, it looks like you can configure not only a QEMU domain but any domain-wide options which might normally have to be passed in the command line.

Like much of the other libvirt documentation, I don’t think it’d be clear to everyone (maybe even most) who read it, but the necessary info appears to be there for anyone motivated enough to want to set it up.

In any case though, I would be hesitant to recommend vga pass-through for Production purposes, today it appears to be a lot more workable than a year ago but it’s still something you might find needs special attention and maintenance. I would caution anyone who implements in Production to make copious notes and make sure whatever you do is replicable.

TSU

is that all you have done?

You need to prepare PCI device for use in guest. It is described pretty extensively in links mentioned already. You cannot add PCI device unless PCI device is prepared to be used by guest.

I’ll wait the fix

Fix for what?

If you think there is a bug document it and report it to those that maintain the code. (hint not openSUSE). It won’t fix itself and the people who code would need a replicable scenario to do anything about it. If it is not reported it will probably not get fixed.

This looks suspiciously like an optimus laptop, and your CPU may not have the necessary vt-d extensions. Can you please past the output of:

 grep model /proc/cpuinfo

and

lspci -vv