VGA passthrough with USB passthrough

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

VGA passthrough with USB passthrough

Neil Sikka

Hello, I am trying to passthrough 2 physical devices to a DomU: my integrated GPU that’s integrated into my CPU and my USB controller. These 2 devices are shown in lspci as follows:


00:02.0 VGA compatible controller: Intel Corporation Haswell Integrated Graphics Controller (rev 06)

00:14.0 USB controller: Intel Corporation Lynx Point USB xHCI Host Controller (rev 04)


My Setup:

xen_pciback compiled and loading as a module

Dom0 has the necessary backend drivers, so I’m assuming its pvops, which the docs say should be using “xen-pciback” rather than “pciback” in classic kernels.

Appended to my grub line: xen-pciback.hide=(00:02.0)(00:14.0) modprobe.blacklist=i915,xhci_pci,xhci_hcd

i915.ko is renamed to _i915.ko because it gets loaded despite modprobe.blacklist argument, and I think i915 is competing with xen-pciback.ko for (00:02.0)

DomU.cfg has: gfx_passthru=1        pci=['00:02.0','00:14.0']

Before starting DomU, I run xl pci-assignable-add 00:02.0 && xl pci-assignable-add 00:14.0


I have gotten each passthrough to independently work correctly on my computer in the past, so I know the hardware supports it. When combining the USB and GPU passthrough, I am seeing different things online and am confused about the correct way to configure my Dom0/DomUs. Here:


https://wiki.xenproject.org/wiki/Xen_VGA_Passthrough


it says nothing about passing the BDF of the iGPU to xen-pciback.hide= argument in grub. However that page links to a document, here:


https://wiki.xenproject.org/wiki/File:Xen_VGA_Passthrough_to_Windows_8_Consumer_Preview_64-bit_English_HVM_domU_and_Windows_XP_Home_Edition_SP3_HVM_domU_with_Xen_4.2-unstable_Changeset_25070_and_Linux_Kernel_3.3.0_in_Ubuntu_11.10_oneiric_ocelot_amd64_Final_Release_Dom0.pdf


which says to pass the BDF of the discrete GPU 01:00.0 to the grub xen-pciback.hide parameter. When I use xen-pciback.hide=(00.02.0)(00:14.0), I see 23 "vgaarb: this pci device is not a vga device" errors when I boot Dom0 (which might be related to the fact that lspci reports 23 devices?). When I remove (00:02.0), I dont see the vgaarb errors, but in both cases, when I create the DomU, the VGA passthrough works. 


When I use xen-pciback.hide=(00.02.0)(00:14.0) and try to passthrough both together, I also get SATA write errors.


How can correctly I passthrough both the iGPU and the USB controller to avoid SATA errors leading to disk corruption and vgaarb errors?


Thank You.

Neil

_______________________________________________
Xen-users mailing list
[hidden email]
https://lists.xen.org/xen-users
Reply | Threaded
Open this post in threaded view
|

Re: VGA passthrough with USB passthrough

Neil Sikka
Hi, I have removed (00:02.0) from the grub argument line and been using:

xen-pciback.hide=(00:14.0) modprobe.blacklist=i915,xhci_pci,xhci_hcd

with DomU.cfg containing: gfx_passthru=1        pci=['00:02.0','00:14.0']

Now I am seeing the VGA passthrough working, but the Windows DomU is stuck at 100% CPU utilization in the kernel. Any ideas why?

I have PVDrivers installed, so I have added the pv list to this mail also.

Neil

On Mon, Oct 30, 2017 at 7:59 PM, Neil Sikka <[hidden email]> wrote:

Hello, I am trying to passthrough 2 physical devices to a DomU: my integrated GPU that’s integrated into my CPU and my USB controller. These 2 devices are shown in lspci as follows:


00:02.0 VGA compatible controller: Intel Corporation Haswell Integrated Graphics Controller (rev 06)

00:14.0 USB controller: Intel Corporation Lynx Point USB xHCI Host Controller (rev 04)


My Setup:

xen_pciback compiled and loading as a module

Dom0 has the necessary backend drivers, so I’m assuming its pvops, which the docs say should be using “xen-pciback” rather than “pciback” in classic kernels.

Appended to my grub line: xen-pciback.hide=(00:02.0)(00:14.0) modprobe.blacklist=i915,xhci_pci,xhci_hcd

i915.ko is renamed to _i915.ko because it gets loaded despite modprobe.blacklist argument, and I think i915 is competing with xen-pciback.ko for (00:02.0)

DomU.cfg has: gfx_passthru=1        pci=['00:02.0','00:14.0']

Before starting DomU, I run xl pci-assignable-add 00:02.0 && xl pci-assignable-add 00:14.0


I have gotten each passthrough to independently work correctly on my computer in the past, so I know the hardware supports it. When combining the USB and GPU passthrough, I am seeing different things online and am confused about the correct way to configure my Dom0/DomUs. Here:


https://wiki.xenproject.org/wiki/Xen_VGA_Passthrough


it says nothing about passing the BDF of the iGPU to xen-pciback.hide= argument in grub. However that page links to a document, here:


https://wiki.xenproject.org/wiki/File:Xen_VGA_Passthrough_to_Windows_8_Consumer_Preview_64-bit_English_HVM_domU_and_Windows_XP_Home_Edition_SP3_HVM_domU_with_Xen_4.2-unstable_Changeset_25070_and_Linux_Kernel_3.3.0_in_Ubuntu_11.10_oneiric_ocelot_amd64_Final_Release_Dom0.pdf


which says to pass the BDF of the discrete GPU 01:00.0 to the grub xen-pciback.hide parameter. When I use xen-pciback.hide=(00.02.0)(00:14.0), I see 23 "vgaarb: this pci device is not a vga device" errors when I boot Dom0 (which might be related to the fact that lspci reports 23 devices?). When I remove (00:02.0), I dont see the vgaarb errors, but in both cases, when I create the DomU, the VGA passthrough works. 


When I use xen-pciback.hide=(00.02.0)(00:14.0) and try to passthrough both together, I also get SATA write errors.


How can correctly I passthrough both the iGPU and the USB controller to avoid SATA errors leading to disk corruption and vgaarb errors?


Thank You.

Neil



--
Twitter: @neilsikka

_______________________________________________
Xen-users mailing list
[hidden email]
https://lists.xen.org/xen-users