<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"><head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
 </head><body style=""><div>Hello everyone,</div>
<div> </div>
<div>I have been trying to pass through the IGD of an i7-7700k. I managed to passthrough the device (it shows up in the Windows Device Manager), but I can't get a output signal.</div>
<div>I am on Arch-Linux, Kernel 4.10, I use a GTX 1080 as primary graphics for the Host. Guest System is Windows 10.</div>
<div> </div>
<div> </div>
<div>lspci -vvs 00:02 Output:</div>
<div>00:02.0 Display controller: Intel Corporation Device 5912 (rev 04)<br>    Subsystem: Micro-Star International Co., Ltd. [MSI] Device 7a66<br>    Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+<br>    Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-<br>    Interrupt: pin A routed to IRQ 16<br>    Region 0: Memory at dd000000 (64-bit, non-prefetchable) [disabled] [size=16M]<br>    Region 2: Memory at b0000000 (64-bit, prefetchable) [disabled] [size=256M]<br>    Region 4: I/O ports at f000 [disabled] [size=64]<br>    Capabilities: [40] Vendor Specific Information: Len=0c <?><br>    Capabilities: [70] Express (v2) Root Complex Integrated Endpoint, MSI 00<br>        DevCap:    MaxPayload 128 bytes, PhantFunc 0<br>            ExtTag- RBE+<br>        DevCtl:    Report errors: Correctable- Non-Fatal- Fatal- Unsupported-<br>            RlxdOrd- ExtTag- PhantFunc- AuxPwr- NoSnoop-<br>            MaxPayload 128 bytes, MaxReadReq 128 bytes<br>        DevSta:    CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-<br>        DevCap2: Completion Timeout: Not Supported, TimeoutDis-, LTR-, OBFF Not Supported<br>        AtomicOpsCap: 32bit- 64bit- 128bitCAS-<br>        DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR-, OBFF Disabled<br>        AtomicOpsCtl: ReqEn-<br>    Capabilities: [ac] MSI: Enable- Count=1/1 Maskable- 64bit-<br>        Address: 00000000  Data: 0000<br>    Capabilities: [d0] Power Management version 2<br>        Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)<br>        Status: D3 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-<br>    Capabilities: [100 v1] Process Address Space ID (PASID)<br>        PASIDCap: Exec- Priv-, Max PASID Width: 14<br>        PASIDCtl: Enable- Exec- Priv-<br>    Capabilities: [200 v1] Address Translation Service (ATS)<br>        ATSCap:    Invalidate Queue Depth: 00<br>        ATSCtl:    Enable-, Smallest Translation Unit: 00<br>    Capabilities: [300 v1] Page Request Interface (PRI)<br>        PRICtl: Enable- Reset-<br>        PRISta: RF- UPRGI- Stopped+<br>        Page Request Capacity: 00008000, Page Request Allocation: 00000020<br>    Kernel driver in use: vfio-pci<br>    Kernel modules: i915<br><br></div>
<div>lspci -vvs 01:00.0 Output:</div>
<div>01:00.0 VGA compatible controller: NVIDIA Corporation GP104 [GeForce GTX 1080] (rev a1) (prog-if 00 [VGA controller])<br>    Subsystem: ASUSTeK Computer Inc. Device 859b<br>    Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-<br>    Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-<br>    Latency: 0<br>    Interrupt: pin A routed to IRQ 144<br>    Region 0: Memory at de000000 (32-bit, non-prefetchable) [size=16M]<br>    Region 1: Memory at c0000000 (64-bit, prefetchable) [size=256M]<br>    Region 3: Memory at d0000000 (64-bit, prefetchable) [size=32M]<br>    Region 5: I/O ports at e000 [size=128]<br>    [virtual] Expansion ROM at 000c0000 [disabled] [size=128K]<br>    Capabilities: [60] Power Management version 3<br>        Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)<br>        Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-<br>    Capabilities: [68] MSI: Enable+ Count=1/1 Maskable- 64bit+<br>        Address: 00000000fee004f8  Data: 0000<br>    Capabilities: [78] Express (v2) Legacy Endpoint, MSI 00<br>        DevCap:    MaxPayload 256 bytes, PhantFunc 0, Latency L0s unlimited, L1 <64us<br>            ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset-<br>        DevCtl:    Report errors: Correctable- Non-Fatal- Fatal- Unsupported-<br>            RlxdOrd+ ExtTag+ PhantFunc- AuxPwr- NoSnoop+<br>            MaxPayload 256 bytes, MaxReadReq 512 bytes<br>        DevSta:    CorrErr- UncorrErr- FatalErr- UnsuppReq- AuxPwr- TransPend-<br>        LnkCap:    Port #0, Speed 8GT/s, Width x16, ASPM L0s L1, Exit Latency L0s <512ns, L1 <16us<br>            ClockPM+ Surprise- LLActRep- BwNot- ASPMOptComp+<br>        LnkCtl:    ASPM Disabled; RCB 64 bytes Disabled- CommClk+<br>            ExtSynch- ClockPM+ AutWidDis- BWInt- AutBWInt-<br>        LnkSta:    Speed 2.5GT/s, Width x16, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-<br>        DevCap2: Completion Timeout: Range AB, TimeoutDis+, LTR+, OBFF Via message<br>        AtomicOpsCap: 32bit- 64bit- 128bitCAS-<br>        DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR+, OBFF Disabled<br>        AtomicOpsCtl: ReqEn-<br>        LnkCtl2: Target Link Speed: 8GT/s, EnterCompliance- SpeedDis-<br>             Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-<br>             Compliance De-emphasis: -6dB<br>        LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete+, EqualizationPhase1+<br>             EqualizationPhase2-, EqualizationPhase3-, LinkEqualizationRequest-<br>    Capabilities: [100 v1] Virtual Channel<br>        Caps:    LPEVC=0 RefClk=100ns PATEntryBits=1<br>        Arb:    Fixed- WRR32- WRR64- WRR128-<br>        Ctrl:    ArbSelect=Fixed<br>        Status:    InProgress-<br>        VC0:    Caps:    PATOffset=00 MaxTimeSlots=1 RejSnoopTrans-<br>            Arb:    Fixed- WRR32- WRR64- WRR128- TWRR128- WRR256-<br>            Ctrl:    Enable+ ID=0 ArbSelect=Fixed TC/VC=ff<br>            Status:    NegoPending- InProgress-<br>    Capabilities: [250 v1] Latency Tolerance Reporting<br>        Max snoop latency: 34326183936ns<br>        Max no snoop latency: 34326183936ns<br>    Capabilities: [128 v1] Power Budgeting <?><br>    Capabilities: [420 v2] Advanced Error Reporting<br>        UESta:    DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-<br>        UEMsk:    DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-<br>        UESvrt:    DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF+ MalfTLP+ ECRC- UnsupReq- ACSViol-<br>        CESta:    RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr-<br>        CEMsk:    RxErr- BadTLP- BadDLLP- Rollover- Timeout- NonFatalErr+<br>        AERCap:    First Error Pointer: 00, GenCap- CGenEn- ChkCap- ChkEn-<br>    Capabilities: [600 v1] Vendor Specific Information: ID=0001 Rev=1 Len=024 <?><br>    Capabilities: [900 v1] #19<br>    Kernel driver in use: nvidia<br>    Kernel modules: nouveau, nvidia_drm, nvidia<br><br></div>
<div> </div>
<div> </div>
<div>The thing i find Interesting here is that the IGD shows up as "Display controller" and the other GPU as "VGA compatible controller".</div>
<div>I also have another pc with an i7-2600 running Arch-Linux, when i issue lspci -vvs 00:02 there it shows up as a "VGA compatible controller".</div>
<div>Could this be in any way related to the problem?</div>
<div> </div>
<div>qemu config:</div>
<div> </div>
<div><domain type='kvm' xmlns:qemu='http://libvirt.org/schemas/domain/qemu/1.0'><br>  <name>win10</name><br>  <uuid>1ecbebf4-cee7-4482-b24a-35c4f5fa6f5b</uuid><br>  <memory unit='KiB'>8388608</memory><br>  <currentMemory unit='KiB'>8388608</currentMemory><br>  <vcpu placement='static'>4</vcpu><br>  <os><br>    <type arch='x86_64' machine='pc-i440fx-2.8'>hvm</type><br>    <bootmenu enable='no'/><br>  </os><br>  <features><br>    <acpi/><br>    <apic/><br>    <hyperv><br>      <relaxed state='on'/><br>      <vapic state='on'/><br>      <spinlocks state='on' retries='8191'/><br>    </hyperv><br>    <vmport state='off'/><br>  </features><br>  <cpu mode='host-passthrough' check='none'><br>    <topology sockets='1' cores='4' threads='1'/><br>  </cpu><br>  <clock offset='localtime'><br>    <timer name='rtc' tickpolicy='catchup'/><br>    <timer name='pit' tickpolicy='delay'/><br>    <timer name='hpet' present='no'/><br>    <timer name='hypervclock' present='yes'/><br>  </clock><br>  <on_poweroff>destroy</on_poweroff><br>  <on_reboot>restart</on_reboot><br>  <on_crash>destroy</on_crash><br>  <pm><br>    <suspend-to-mem enabled='no'/><br>    <suspend-to-disk enabled='no'/><br>  </pm><br>  <devices><br>    <emulator>/usr/sbin/qemu-system-x86_64</emulator><br>    <disk type='file' device='disk'><br>      <driver name='qemu' type='vmdk'/><br>      <source file='/var/lib/libvirt/images/w10.vmdk'/><br>      <target dev='hda' bus='ide'/><br>      <address type='drive' controller='0' bus='0' target='0' unit='0'/><br>    </disk><br>    <disk type='file' device='cdrom'><br>      <driver name='qemu' type='raw'/><br>      <source file='/home/simon/Desktop/Win10_1607_N_EnglishInternational_x64.iso'/><br>      <target dev='hdb' bus='ide'/><br>      <readonly/><br>      <boot order='1'/><br>      <address type='drive' controller='0' bus='0' target='0' unit='1'/><br>    </disk><br>    <controller type='usb' index='0' model='ich9-ehci1'><br>      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x7'/><br>    </controller><br>    <controller type='usb' index='0' model='ich9-uhci1'><br>      <master startport='0'/><br>      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0' multifunction='on'/><br>    </controller><br>    <controller type='usb' index='0' model='ich9-uhci2'><br>      <master startport='2'/><br>      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x1'/><br>    </controller><br>    <controller type='usb' index='0' model='ich9-uhci3'><br>      <master startport='4'/><br>      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x2'/><br>    </controller><br>    <controller type='pci' index='0' model='pci-root'/><br>    <controller type='ide' index='0'><br>      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/><br>    </controller><br>    <input type='tablet' bus='usb'><br>      <address type='usb' bus='0' port='1'/><br>    </input><br>    <input type='mouse' bus='ps2'/><br>    <input type='keyboard' bus='ps2'/><br>    <hostdev mode='subsystem' type='pci' managed='yes'><br>      <driver name='vfio'/><br>      <source><br>        <address domain='0x0000' bus='0x00' slot='0x02' function='0x0'/><br>      </source><br>      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/><br>    </hostdev><br>    <memballoon model='none'/><br>  </devices><br></domain><br><br>If i add </div>
<div>
<div><span style="font-family: Arial, Helvetica, sans-serif;"><qemu:commandline></span></div>
<div><span style="font-family: Arial, Helvetica, sans-serif;">  <qemu:arg value='-set'/></span></div>
<div><span style="font-family: Arial, Helvetica, sans-serif;">  <qemu:arg value='device.hostdev0.x-vga=on'/></span></div>
<div><span style="font-family: Arial, Helvetica, sans-serif;"></qemu:commandline></span></div>
<div><span style="font-family: Arial, Helvetica, sans-serif;">I get an error message:</span></div>
<div><span style="font-family: Arial, Helvetica, sans-serif;"></span></div>
<div><span style="font-family: Arial, Helvetica, sans-serif;">Error starting domain: internal error: qemu unexpectedly closed the monitor: 2017-04-06T09:36:06.194417Z qemu-system-x86_64: -device vfio-pci,host=00:02.0,id=hostdev0,bus=pci.0,addr=0x2: vfio error: 0000:00:02.0: failed getting region info for VGA region index 8: Invalid argument<br><br>Traceback (most recent call last):<br>  File "/usr/share/virt-manager/virtManager/asyncjob.py", line 88, in cb_wrapper<br>    callback(asyncjob, *args, **kwargs)<br>  File "/usr/share/virt-manager/virtManager/asyncjob.py", line 124, in tmpcb<br>    callback(*args, **kwargs)<br>  File "/usr/share/virt-manager/virtManager/libvirtobject.py", line 83, in newfn<br>    ret = fn(self, *args, **kwargs)<br>  File "/usr/share/virt-manager/virtManager/domain.py", line 1479, in startup<br>    self._backend.create()<br>  File "/usr/lib/python2.7/site-packages/libvirt.py", line 1039, in create<br>    if ret == -1: raise libvirtError ('virDomainCreate() failed', dom=self)<br>libvirtError: internal error: qemu unexpectedly closed the monitor: 2017-04-06T09:36:06.194417Z qemu-system-x86_64: -device vfio-pci,host=00:02.0,id=hostdev0,bus=pci.0,addr=0x2: vfio error: 0000:00:02.0: failed getting region info for VGA region index 8: Invalid argument<br><br></span></div>
<div><span style="font-family: Arial, Helvetica, sans-serif;"></span></div>
<div><span style="font-family: Arial, Helvetica, sans-serif;">Any help and guidance is greatly appreciated!</span></div>
<div><span style="font-family: Arial, Helvetica, sans-serif;">Thanks,</span></div>
<div><span style="font-family: Arial, Helvetica, sans-serif;">wurzelsim</span></div>
<div><span style="font-family: Arial, Helvetica, sans-serif;"></span></div>
</div></body></html>