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

Acewind acewind at gmail.com
Thu Oct 25 01:33:13 UTC 2018


I can connect into win10 guest by rdp, and install vga driver, the monitor
device also works normally.

Acewind <acewind at gmail.com> 于2018年10月24日周三 下午10:06写道:

> 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/20181025/d5ba4c92/attachment.htm>


More information about the vfio-users mailing list