VGA-passthrough on KVM

Hello,

I have an NVIDIA GRID K2 card running with driver 325.15 on a CentOS 6.4 host with linux kernel 3.10.6. I am trying to get VGA-passthrough to work on KVM, but I’m unsure as to how to begin. My eventual goal is to get something direct rendering support via VirtualGL working in VMs. Has anyone at NVIDIA worked on this, and if so would it be possible to speak to them / find out how to set up VGA-passthrough for KVM?

I’ve attempted to utilize the vfio-pci module (after following the instructions: https://bbs.archlinux.org/viewtopic.php?id=162768&p=1) - so far attempting to bind the device to vfio-pci results in kernel hangs and log messages like the following…

Aug 20 13:11:49 penguin kernel: [ 295.672392] VFIO - User Level meta-driver version: 0.3
Aug 20 13:11:49 penguin kernel: [ 296.113931] dmar: DRHD: handling fault status reg 2
Aug 20 13:11:49 penguin kernel: [ 296.113940] dmar: DMAR:[DMA Read] Request device [05:00.0] fault addr ffff2000
Aug 20 13:11:49 penguin kernel: [ 296.113940] DMAR:[fault reason 02] Present bit in context entry is clear
Aug 20 13:11:49 penguin kernel: [ 296.114078] NVRM: GPU at 0000:05:00: GPU-bae6c46b-5f2b-9a45-a303-82e87ba88f84
Aug 20 13:11:49 penguin kernel: [ 296.114091] NVRM: Xid (0000:05:00): 62, 0096(2df0) 00000000 00000000
Aug 20 13:11:49 penguin kernel: [ 296.431368] dmar: DRHD: handling fault status reg 102
Aug 20 13:11:49 penguin kernel: [ 296.431377] dmar: DMAR:[DMA Read] Request device [04:00.0] fault addr ffff2000
Aug 20 13:11:49 penguin kernel: [ 296.431377] DMAR:[fault reason 02] Present bit in context entry is clear
Aug 20 13:11:49 penguin kernel: [ 296.431510] NVRM: GPU at 0000:04:00: GPU-dc2ce15c-cf0c-4fd8-998c-7647f92aba14
Aug 20 13:11:49 penguin kernel: [ 296.431521] NVRM: Xid (0000:04:00): 62, 0096(2df0) 00000000 00000000

Thanks ahead of time.

Hi ghee,

Have you had any luck with this? I am now attempting a similar procedure with the Grid K2 card and CentOS 7.

I followed the same Arch Linux post that everyone on google has as well. Looking for additional passthrough options. Will be using Saltstack to create a pseudo API for attaching / detaching vGPU hot in KVM.

Would love to collaborate!

Abe

I think this topic was discussed here already.
https://devtalk.nvidia.com/default/topic/545560