Hello.

I've found the cause of the problem.

GeForce RTX 2060 Super has four components:

02:00.0 VGA compatible controller [0300]: NVIDIA Corporation Device [10de:1f06] (rev a1) (prog-if 00 [VGA controller])

02:00.1 Audio device [0403]: NVIDIA Corporation TU106 High Definition Audio Controller [10de:10f9] (rev a1)

02:00.2 USB controller [0c03]: NVIDIA Corporation TU106 USB 3.1 Host Controller [10de:1ada] (rev a1) (prog-if 30 [XHCI])

02:00.3 Serial bus controller [0c80]: NVIDIA Corporation TU106 USB Type-C Port Policy Controller [10de:1adb] (rev a1)

And all of them are included to iommu group:

[    0.890405] iommu: Adding device 0000:02:00.0 to group 11
[    0.890422] iommu: Adding device 0000:02:00.1 to group 11
[    0.890437] iommu: Adding device 0000:02:00.2 to group 11
[    0.890453] iommu: Adding device 0000:02:00.3 to group 11

If I use all of them as the option for vfio-pci:

options vfio-pci ids=10de:1f06,10de:10f9,10de:1ada,10de:1adb

I get:

"vfio 0000:02:00.0: failed getting region info for VGA region index 8:
Invalid argument
device does not support requested feature x-vga"

But if I use only first three of them as the option for vfio-pci:

options vfio-pci ids=10de:1f06,10de:10f9,10de:1ada

then everything works properly (GPU successfully works in the guest OS).

Thanks.

Is your host kernel built with CONFIG_VFIO_PCI_VGA=y?

Yes. My kernel vfio settings:

CONFIG_VFIO_IOMMU_TYPE1=m
CONFIG_VFIO_VIRQFD=m
CONFIG_VFIO=m
# CONFIG_VFIO_NOIOMMU is not set
CONFIG_VFIO_PCI=m
CONFIG_VFIO_PCI_VGA=y
CONFIG_VFIO_PCI_MMAP=y
CONFIG_VFIO_PCI_INTX=y
CONFIG_VFIO_PCI_IGD=y
# CONFIG_VFIO_MDEV is not set

Are you
disabling that support with the disable_vga=1 module option of
vfio-pci?

I've tried both variants: with disable_vga=1 module option and without it - same result.

On Tue, 31 Mar 2020 21:35:33 +0300
Артем Семенов <artem semenov jarillolabs com> wrote:

Hello!

I try to passthrough GPU to the virtual machine (qemu). I've tried
different variants:

-device vfio-pci,host=02:00.0,bus=root.1,addr=00.0,multifunction=on,x-vga=on

or

-device vfio-pci,host=02:00.0,x-vga=on

and other but in any case I get error:

vfio 0000:02:00.0: failed getting region info for VGA region index 8:
Invalid argument
device does not support requested feature x-vga

dmesg contains:

[  844.599821] vfio_ecap_init: 0000:02:00.0 hiding ecap 0x1e 0x258
[  844.599860] vfio_ecap_init: 0000:02:00.0 hiding ecap 0x19 0x900

If I remove x-vga=on option then qemu works but there is no signal from
GPU (black screen).

It looks like http://vfio.blogspot.com/2014/08/vfiovga-faq.html

"Question 3:

I have Intel host graphics, when I start the VM I don't get any output
on the assigned VGA monitor... "

I've tried to use 2 versions of the kernel: 4.19 and 5.4 - no difference.

Moterboard: ASUS PRIME H370-A.
GPU: ASUS Turbo GeForce RTX 2060 Super.

What could be the cause of this problem?

Is your host kernel built with CONFIG_VFIO_PCI_VGA=y?  Are you
disabling that support with the disable_vga=1 module option of
vfio-pci?  Thanks,

Alex


--
With best regards,
 Artem Semenov               mailto:artem.seme...@jarillolabs.com


_______________________________________________
vfio-users mailing list
vfio-users@redhat.com
https://www.redhat.com/mailman/listinfo/vfio-users

Reply via email to