[vfio-users] IGD passthrough can not light up screen

Acewind acewind at gmail.com
Wed Oct 24 14:06:55 UTC 2018


I run a win10 guest in ubuntu 18.10 with intel igd vfio passed through into
the guest:
CPU: Intel(R) Core(TM) i3-7100U CPU @ 2.40GHz
VGA: Intel Corporation HD Graphics 620 (rev 02)

Host boot in legacy mode:
root at localhost:/home# efibootmgr
EFI variables are not supported on this system.

root at localhost:/home# ps -elf | grep qemu
6 S libvirt+  1941     1 99  80   0 - 1205084 poll_s 21:54 ?      00:04:32
qemu-system-x86_64 -enable-kvm -name guest=win10,debug-threads=on -S
-object
secret,id=masterKey0,format=raw,file=/var/lib/libvirt/qemu/domain-3-win10/master-key.aes
-machine pc-i440fx-cosmic,accel=kvm,usb=off,dump-guest-core=off -cpu
Broadwell-noTSX-IBRS,vme=on,f16c=on,rdrand=on,hypervisor=on,arat=on,xsaveopt=on,abm=on,hv_time,hv_relaxed,hv_vapic,hv_spinlocks=0x1fff
-m 3584 -realtime mlock=off -smp 4,sockets=4,cores=1,threads=1 -uuid
d4e06db6-08e3-407c-8788-8896a17965c0 -display none -no-user-config
-nodefaults -chardev socket,id=charmonitor,fd=24,server,nowait -mon
chardev=charmonitor,id=monitor,mode=control -rtc
base=localtime,driftfix=slew -global kvm-pit.lost_tick_policy=delay
-no-hpet -no-shutdown -global PIIX4_PM.disable_s3=1 -global
PIIX4_PM.disable_s4=1 -boot strict=on -device
ich9-usb-ehci1,id=usb,bus=pci.0,addr=0x4.0x7 -device
ich9-usb-uhci1,masterbus=usb.0,firstport=0,bus=pci.0,multifunction=on,addr=0x4
-device ich9-usb-uhci2,masterbus=usb.0,firstport=2,bus=pci.0,addr=0x4.0x1
-device ich9-usb-uhci3,masterbus=usb.0,firstport=4,bus=pci.0,addr=0x4.0x2
-drive file=/home/win10.qcow2,format=qcow2,if=none,id=drive-ide0-0-0
-device
ide-hd,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0,bootindex=1
-netdev tap,fd=26,id=hostnet0 -device
rtl8139,netdev=hostnet0,id=net0,mac=52:54:00:0f:34:ec,bus=pci.0,addr=0x3
-chardev pty,id=charserial0 -device
isa-serial,chardev=charserial0,id=serial0 -device
usb-tablet,id=input0,bus=usb.0,port=1 -device
vfio-pci,host=00:02.0,id=hostdev0,bus=pci.0,addr=0x2,rombar=1,romfile=/home/vbios.dump
-device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x5 -bios
/usr/share/seabios/bios.bin -chardev file,id=seabios,path=/tmp/bios.log
-device isa-debugcon,iobase=0x402,chardev=seabios -set
device.hostdev0.x-igd-opregion=on -set device.hostdev0.x-igd-gms=32
-sandbox
on,obsolete=deny,elevateprivileges=deny,spawn=deny,resourcecontrol=deny
-msg timestamp=on

In SeaBIOS log file, it shows guest already booted, but no signal on the
screen.

SeaBIOS (version 1.11.1-1ubuntu1)
BUILD: gcc: (Ubuntu 8.2.0-7ubuntu1) 8.2.0 binutils: (GNU Binutils for
Ubuntu) 2.31.1
RamSize: 0xc0000000 [cmos]
Relocating init from 0x000e3220 to 0xbffb2180 (size 56800)
Found QEMU fw_cfg
QEMU fw_cfg DMA interface supported
RamBlock: addr 0x0000000000000000 len 0x00000000c0000000 [e820]
RamBlock: addr 0x0000000100000000 len 0x0000000020000000 [e820]
Moving pm_base to 0x600
boot order:
1: /pci at i0cf8/ide at 1,1/drive at 0/disk at 0
2: HALT
=== PCI bus & bridge init ===
PCI: pci_bios_init_bus_rec bus = 0x0
=== PCI device probing ===
Found 12 PCI devices (max PCI bus is 00)
=== PCI new allocation pass #1 ===
PCI: check devices
=== PCI new allocation pass #2 ===
PCI: IO: c000 - c1cf
PCI: 32: 00000000c0000000 - 00000000fec00000
PCI: map device bdf=00:03.0  bar 0, addr 0000c000, size 00000100 [io]
PCI: map device bdf=00:02.0  bar 4, addr 0000c100, size 00000040 [io]
PCI: map device bdf=00:04.0  bar 4, addr 0000c140, size 00000020 [io]
PCI: map device bdf=00:04.1  bar 4, addr 0000c160, size 00000020 [io]
PCI: map device bdf=00:04.2  bar 4, addr 0000c180, size 00000020 [io]
PCI: map device bdf=00:05.0  bar 0, addr 0000c1a0, size 00000020 [io]
PCI: map device bdf=00:01.1  bar 4, addr 0000c1c0, size 00000010 [io]
PCI: map device bdf=00:02.0  bar 0, addr fd000000, size 01000000 [mem]
PCI: map device bdf=00:03.0  bar 6, addr fe000000, size 00080000 [mem]
PCI: map device bdf=00:02.0  bar 6, addr fe080000, size 00010000 [mem]
PCI: map device bdf=00:03.0  bar 1, addr fe090000, size 00001000 [mem]
PCI: map device bdf=00:04.7  bar 0, addr fe091000, size 00001000 [mem]
PCI: map device bdf=00:02.0  bar 2, addr e0000000, size 10000000 [prefmem]
PCI: map device bdf=00:05.0  bar 4, addr f0000000, size 00004000 [prefmem]
PCI: init bdf=00:00.0 id=8086:1237
PCI: init bdf=00:01.0 id=8086:7000
PIIX3/PIIX4 init: elcr=00 0c
PCI: init bdf=00:01.1 id=8086:7010
PCI: init bdf=00:01.3 id=8086:7113
Using pmtimer, ioport 0x608
PCI: init bdf=00:02.0 id=8086:5916
Intel IGD OpRegion enabled at 0xbfffe000, size 8KB, dev 00:02.0
Intel IGD BDSM enabled at 0xbf700000, size 8MB, dev 00:02.0
PCI: init bdf=00:03.0 id=10ec:8139
PCI: init bdf=00:04.0 id=8086:2934
PCI: init bdf=00:04.1 id=8086:2935
PCI: init bdf=00:04.2 id=8086:2936
PCI: init bdf=00:04.7 id=8086:293a
PCI: init bdf=00:05.0 id=1af4:1002
PCI: init bdf=00:1f.0 id=8086:9d4e
PCI: Using 00:02.0 for primary VGA
handle_smp: apic_id=0x1
handle_smp: apic_id=0x2
handle_smp: apic_id=0x3
Found 4 cpu(s) max supported 4 cpu(s)
Copying PIR from 0xbffbfca0 to 0x000f0f80
Copying MPTABLE from 0x00006e9c/bffa8cd0 to 0x000f0e30
Copying SMBIOS entry point from 0x00006e9c to 0x000f0e10
Scan for VGA option rom
Running option rom at c000:0003
Turning on vga text mode console
SeaBIOS (version 1.11.1-1ubuntu1)
Machine UUID d4e06db6-08e3-407c-8788-8896a17965c0
EHCI init on dev 00:04.7 (regs=0xfe091020)
UHCI init on dev 00:04.0 (io=c140)
UHCI init on dev 00:04.1 (io=c160)
UHCI init on dev 00:04.2 (io=c180)
ATA controller 1 at 1f0/3f4/0 (irq 14 dev 9)
ATA controller 2 at 170/374/0 (irq 15 dev 9)
Found 0 lpt ports
Found 1 serial ports
PS2 keyboard initialized
ata0-0: QEMU HARDDISK ATA-7 Hard-Disk (40960 MiBytes)
Searching bootorder for: /pci at i0cf8/*@1,1/drive at 0/disk at 0
All threads complete.
Scan for option roms
Running option rom at d000:0003
pmm call arg1=1
pmm call arg1=0
pmm call arg1=1
pmm call arg1=0
Searching bootorder for: /pci at i0cf8/*@3
Searching bootorder for: /rom at genroms/kvmvapic.bin
Searching bootorder for: HALT
drive 0x000f0d70: PCHS=16383/16/63 translation=lba LCHS=1024/255/63
s=83886080
Running option rom at d100:0003
Space available for UMB: d3800-ef000, f0000-f0d70
Returned 118784 bytes of ZoneHigh
e820 map has 10 items:
  0: 0000000000000000 - 000000000009fc00 = 1 RAM
  1: 000000000009fc00 - 00000000000a0000 = 2 RESERVED
  2: 00000000000f0000 - 0000000000100000 = 2 RESERVED
  3: 0000000000100000 - 00000000bf700000 = 1 RAM
  4: 00000000bf700000 - 00000000bff00000 = 2 RESERVED
  5: 00000000bff00000 - 00000000bffdd000 = 1 RAM
  6: 00000000bffdd000 - 00000000c0000000 = 2 RESERVED
  7: 00000000feffc000 - 00000000ff000000 = 2 RESERVED
  8: 00000000fffc0000 - 0000000100000000 = 2 RESERVED
  9: 0000000100000000 - 0000000120000000 = 1 RAM
enter handle_19:
  NULL
Booting from Hard Disk...
Booting from 0000:7c00

No errors found in dmesg or libvirt log.
Before virsh create, there's fail error in dmesg:
[drm] failed to retrieve link info, disabling eDP
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://listman.redhat.com/archives/vfio-users/attachments/20181024/6c8b2f8d/attachment.htm>


More information about the vfio-users mailing list