[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#923393: CONFIG_DRM_I915_GVT_KVMGT is not enabled



Control: tag -1 + patch
Control: reassign -1 linux

Hi,

On Sun, 17 Mar 2019 23:04:23 +0100 Johannes Schauer <josch@debian.org> wrote:
> On Wed, 27 Feb 2019 15:01:39 +0100 Michael Fritscher <michael@fritscher.net> wrote:
> > I would like to try GVT like described in
> > https://github.com/intel/gvt-linux/wiki/GVTg_Setup_Guide to get native 3D
> > accelaration in a KVM guest. Unfortunately, the kernel compile options
> > CONFIG_DRM_I915_GVT and CONFIG_DRM_I915_GVT_KVMGT are not set.  So I can't
> > use it with the provided kernels.
> 
> CONFIG_DRM_I915_GVT_KVMGT depends on CONFIG_VFIO_MDEV and
> CONFIG_VFIO_MDEV_DEVICE, so these would also have to be enabled (both are
> disabled by default).

I can confirm that the patch at the end of this email gives me this:

    $ ls /sys/devices/pci0000:00/0000:00:02.0/mdev_supported_types/
    i915-GVTg_V4_2	i915-GVTg_V4_4	i915-GVTg_V4_8

And after an "echo $uuid | sudo /sys/[...]/i915-GVTg_V4_2/create" I get a new
virtual card in /sys/devices/pci0000:00/0000:00:02.0/$uuid.

Unfortunately, I haven't had much luck with using this feature in practice. I
start qemu-system-x86_64 with:

    $ qemu-system-x86_64 -device vfio-pci,sysfsdev=/sys/[...]/$uuid/ \
        -vga qxl -display gtk,gl=on

And indeed the Windows guest shows me an Intel 5500 card but after installing
the drivers I constantly get a bluescreen immediately after boot. Neither
Windows 7, 8.1 or 10 worked. In Windows 10 the bluescreen shows a "video tdr
failure". On my host system I get spammed with dmesg output like:

    [Wed Mar 20 04:19:07 2019] vfio_pin_page_external: Task qemu-system-x86 (28656) RLIMIT_MEMLOCK (16777216) exceeded
    [Wed Mar 20 04:19:07 2019] gvt: vgpu 1: vfio_pin_pages failed for gfn 0x4359e, ret -12
    [Wed Mar 20 04:19:07 2019] gvt: vgpu 1: fail: spt 0000000030299d2a guest entry 0x4359e007 type 1
    [Wed Mar 20 04:19:07 2019] gvt: vgpu 1: fail: shadow page 0000000030299d2a guest entry 0x4359e007 type 1.
    [Wed Mar 20 04:19:07 2019] gvt: guest page write error, gpa f7acae0

or

    [Wed Mar 20 04:19:07 2019] vfio_pin_page_external: Task qemu-system-x86 (28656) RLIMIT_MEMLOCK (16777216) exceeded
    [Wed Mar 20 04:19:07 2019] gvt: vgpu 1: vfio_pin_pages failed for gfn 0x622cd, ret -12
    [Wed Mar 20 04:19:07 2019] gvt: vgpu 1: fail to populate guest ggtt entry

I'm using Debian buster, Linux 4.19.16 and qemu 1:3.1+dfsg-5 on an Intel
Broadwell system.

I don't know if these problems are due to my hardware or due to qemu or due to
my Windows guests but maybe it would make sense to see this setup working in
practice before enabling the respective kernel options?

Somebody on Arch Linux claims it's working:

https://www.reddit.com/r/VFIO/comments/8h352p

This bug should probably be assigned to src:linux instead of
src:linux-signed-amd64 as only the former contains the kernel sources.

Thanks!

cheers, josch


diff -Nru linux-4.19.16/debian/config/config linux-4.19.16/debian/config/config
--- linux-4.19.16/debian/config/config  2019-01-08 07:03:19.000000000 +0000
+++ linux-4.19.16/debian/config/config  2019-03-17 22:06:06.000000000 +0000
@@ -680,6 +680,8 @@
 ## file: drivers/gpu/drm/i915/Kconfig
 ##
 CONFIG_DRM_I915_USERPTR=y
+CONFIG_DRM_I915_GVT=y
+CONFIG_DRM_I915_GVT_KVMGT=m
 
 ##
 ## file: drivers/gpu/drm/i915/Kconfig.debug
@@ -5229,6 +5231,12 @@
 # CONFIG_VFIO_NOIOMMU is not set
 
 ##
+## file: drivers/vfio/mdev/Kconfig
+##
+CONFIG_VFIO_MDEV=m
+CONFIG_VFIO_MDEV_DEVICE=m
+
+##
 ## file: drivers/vhost/Kconfig
 ##
 CONFIG_VHOST_NET=m

Attachment: signature.asc
Description: signature


Reply to: