[vfio-users] Binding Nvidia to vfio prevents hardware acceleration on Skylake

Philip Abernethy chais.z3r0 at gmail.com
Thu Mar 3 14:55:56 UTC 2016


I totally forgot to paste the Oops I get:
[   91.123923] Oops: 0010 [#1] PREEMPT SMP
[   91.124714] Modules linked in: fuse uinput nls_iso8859_1 nls_cp437 vfat
fat xpad snd_hda_codec_hdmi ff_memless snd_hda_codec_realtek
snd_hda_codec_generic joydev mousedev input_leds led_class 8250_dw hci_uart
i2c_designware_platform i2c_designware_core btbcm btqca btintel nouveau
snd_hda_intel intel_rapl snd_hda_codec mxm_wmi ttm iosf_mbi bluetooth
x86_pkg_temp_thermal intel_powerclamp snd_hda_core snd_hwdep snd_pcm rfkill
snd_timer snd coretemp crc16 kvm_intel psmouse serio_raw kvm alx soundcore
irqbypass i2c_i801 pcspkr mdio i2c_hid thermal fan battery wmi
pinctrl_sunrisepoint pinctrl_intel evdev intel_lpss_acpi mac_hid acpi_pad
fjes tpm_tis idma64 mei_me tpm mei shpchp processor acpi_als kfifo_buf
industrialio intel_lpss_pci intel_lpss sch_fq_codel ip_tables x_tables
btrfs xor raid6_pq sha256_ssse3
[   91.127757]  sha256_generic hmac drbg ansi_cprng algif_skcipher af_alg
uas usb_storage dm_crypt dm_mod hid_generic usbhid hid sd_mod
crct10dif_pclmul crc32_pclmul atkbd crc32c_intel libps2 ahci libahci
aesni_intel aes_x86_64 lrw gf128mul glue_helper ablk_helper cryptd xhci_pci
libata xhci_hcd scsi_mod usbcore usb_common i8042 serio i915 video button
intel_gtt i2c_algo_bit drm_kms_helper syscopyarea sysfillrect sysimgblt
fb_sys_fops drm
[   91.130733] CPU: 3 PID: 824 Comm: Xorg Tainted: G     U
 4.4.1-2-ARCH #1
[   91.131684] Hardware name: MSI MS-7976/Z170A GAMING M7 (MS-7976), BIOS
1.90 12/17/2015
[   91.132660] task: ffff8804358c0000 ti: ffff880434384000 task.ti:
ffff880434384000
[   91.133622] RIP: 0010:[<0000000000000000>]  [<          (null)>]
  (null)
[   91.134486] RSP: 0018:ffff880434387b10  EFLAGS: 00010282
[   91.135310] RAX: ffff8804069f7840 RBX: 0000000000000001 RCX:
00000000fffff00e
[   91.136167] RDX: 00000000fffff00e RSI: ffff88046aee20d8 RDI:
ffff8804069f7840
[   91.137006] RBP: ffff880434387b98 R08: 0000000000000005 R09:
00000000000000a0
[   91.137863] R10: ffff88046d35e000 R11: 0000000000000000 R12:
ffff88046aee20d8
[   91.138702] R13: ffff88046aee4568 R14: ffff8804069a5240 R15:
0000000000000000
[   91.139477] FS:  00007ff03a748940(0000) GS:ffff88047ed80000(0000)
knlGS:0000000000000000
[   91.140220] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[   91.140988] CR2: 0000000000000000 CR3: 00000000390ae000 CR4:
00000000003406e0
[   91.141741] DR0: 0000000000000000 DR1: 0000000000000000 DR2:
0000000000000000
[   91.142510] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7:
0000000000000400
[   91.143255] Stack:
[   91.143974]  ffffffffa0110d34 00000000000000db ffff88046aee20dc
fffff00e6c3a9e00
[   91.144677]  ffff880434387bd8 ffff88042be68480 ffff8804069a5240
ffff8800369fa640
[   91.145356]  ffff880434387cbe ffff8804069f7df0 ffff8800391f7400
000000002ab10278
[   91.146036] Call Trace:
[   91.146718]  [<ffffffffa0110d34>] ? i915_gem_object_sync+0x1a4/0x320
[i915]
[   91.147435]  [<ffffffffa0123aff>] intel_execlists_submission+0x1cf/0x410
[i915]
[   91.148132]  [<ffffffffa01041be>]
i915_gem_do_execbuffer.isra.13+0x10ce/0x13d0 [i915]
[   91.148862]  [<ffffffff8153090f>] ? unix_stream_recvmsg+0x4f/0x70
[   91.149530]  [<ffffffffa0105167>] i915_gem_execbuffer2+0xd7/0x230 [i915]
[   91.150198]  [<ffffffffa00057b2>] drm_ioctl+0x152/0x540 [drm]
[   91.150928]  [<ffffffffa0105090>] ? i915_gem_execbuffer+0x320/0x320
[i915]
[   91.151666]  [<ffffffff811fabe7>] ? __fget+0x77/0xb0
[   91.152376]  [<ffffffff811f0b68>] do_vfs_ioctl+0x298/0x480
[   91.153066]  [<ffffffff811fabe7>] ? __fget+0x77/0xb0
[   91.153755]  [<ffffffff811f0dc9>] SyS_ioctl+0x79/0x90
[   91.154467]  [<ffffffff81591b2e>] entry_SYSCALL_64_fastpath+0x12/0x71
[   91.155164] Code:  Bad RIP value.
[   91.155931] RIP  [<          (null)>]           (null)
[   91.156711]  RSP <ffff880434387b10>
[   91.157446] CR2: 0000000000000000
[   91.163084] ---[ end trace a24ad2b52fb509d5 ]---

Philip Abernethy <chais.z3r0 at gmail.com> schrieb am Mi., 2. März 2016 um
19:02 Uhr:

> Ok so I got myself a hardware upgrade and wanted to give vfio another shot.
>
> The hardware:
> Mainboard: MSI Z170A Gaming M7
> CPU: Intel Core i5 6600K
> Graphics: Gigabyte Geforce GTX 960
>
> Host OS is Arch Linux, currently with unpatched standard kernel. The Z170
> chipset doesn't officially support VT-d and it's up to the hardware vendor
> to offer it, which MSI does.
> My problem is, as soon as I include the vfio modules in the MODULES array
> in mkinitcpio.conf (equivalent to dracut's add_drivers+=) the Nvidia card
> is bound to vfio-pci on boot. Even without me specifying it in a modprobe
> conf or the kernel line.
> But if the Nvidia is bound to vfio-pci trying to use hardware acceleration
> on the IGD will freeze the IGD (effectively Xorg or gnome-shell). The OS
> will work fine, so I can still log in remotely, but the screen is useless.
>
> Stable Configs:
> /etc/X11/xorg.conf.d/20-intel.conf:
> Section "Device"
> Identifier "Intel Graphics"
> Driver "intel"
> Option "DRI" "3"
> Option "AccelMethod" "sna"
> EndSection
>
> /etc/modprobe.d/i915.conf:
> options i915 enable_rc6=1 enable_fbc=1 lvds_downclock=1 semaphores=1
>
> I have installed the necessary packages for VA-API and VDPAU support on
> Intel graphics.
>
> I tried i915.enable_execlists=0 because the Arch wiki
> <https://wiki.archlinux.org/index.php/Intel_graphics#Kernel_crashing_w.2Fkernels_4.0.2B_on_Broadwell.2FCore-M_chips> mentions
> it, but without success. Also it seems that as soon as the system starts
> freezing I have to roll back quite a lot of changes in order to get it
> working again. It's not enough to undo the last change after it stopped
> working.
> Has anyone gotten a similar combination to work? Can I reset the IGD
> somehow to 'thaw' it?
>
> Thanks in advance.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/vfio-users/attachments/20160303/dd9524bc/attachment.htm>


More information about the vfio-users mailing list