vfio-pci passed Radeon 7870XT is unstable on first boot of a Windows 8.1 guest
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
QEMU |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
I'm passing a Radeon 7870XT to a Windows 8.1 guest. It works flawlessly (I tested it by a 12 hour Furmark run), but only on second lauch of the guest. On first launch after I get screen corruption on any 3D operation in guest (even showing a search box in Chrome) and the guest becomes unusable with constant driver resets to a point, when it grinds to a halt. At that moment I get about ~1K of log entries similar to
sty 04 11:12:57 miner kernel: AMD-Vi: Event logged [IO_PAGE_FAULT device=01:00.0 domain=0x0002 address=
sty 04 11:12:57 miner kernel: AMD-Vi: Event logged [IO_PAGE_FAULT device=01:00.0 domain=0x0002
When I abort first launch of the quest with a monitor quit command during during guest BIOS initialisation, on a second launch I get the following errors in Qemu monitor:
qemu-system-x86_64: vfio_dma_
qemu-system-x86_64: vfio_dma_
qemu-system-x86_64: vfio_dma_
qemu-system-x86_64: vfio_dma_
and the following entries in the kernel log
sty 01 22:04:53 miner kernel: vfio_ecap_init: 0000:01:00.0 hiding ecap 0x1b@0x2d0
sty 01 22:04:55 miner kernel: ------------[ cut here ]------------
sty 01 22:04:55 miner kernel: WARNING: CPU: 3 PID: 1012 at drivers/
sty 01 22:04:55 miner kernel: Modules linked in: tun bridge stp llc bnep vfio_pci vfio_iommu_type1 vfio fuse ts2020 ds3000 dvb_usb_dw2102 kvm_amd kvm crc32_pclmul c...luetooth rc_
sty 01 22:04:55 miner kernel: CPU: 3 PID: 1012 Comm: qemu-system-x86 Not tainted 3.13.0-2-mainline #1
sty 01 22:04:55 miner kernel: Hardware name: To Be Filled By O.E.M. To Be Filled By O.E.M./FM2A85X Extreme6, BIOS P2.30 07/11/2013
sty 01 22:04:55 miner kernel: 0000000000000009 ffff8804311b9d20 ffffffff814ddc72 0000000000000000
sty 01 22:04:55 miner kernel: ffff8804311b9d58 ffffffff8105f2ed 00000000fffffff0 00000000b0000000
sty 01 22:04:55 miner kernel: 00000000000b0000 00000000b0000000 0000000000000000 ffff8804311b9d68
sty 01 22:04:55 miner kernel: Call Trace:
sty 01 22:04:55 miner kernel: [<ffffffff814dd
sty 01 22:04:55 miner kernel: [<ffffffff8105f
sty 01 22:04:55 miner kernel: [<ffffffff8105f
sty 01 22:04:55 miner kernel: [<ffffffffa0ce9
sty 01 22:04:55 miner kernel: [<ffffffffa0cea
sty 01 22:04:55 miner kernel: [<ffffffffa0ce0
sty 01 22:04:55 miner kernel: [<ffffffff811ad
sty 01 22:04:55 miner kernel: [<ffffffff811ae
sty 01 22:04:55 miner kernel: [<ffffffff814eb
sty 01 22:04:55 miner kernel: ---[ end trace 53ac540a2e8783dc ]---
sty 01 22:04:56 miner kernel: ------------[ cut here ]------------
but the guest works flawlessly (even with reboots).
qemu --version
QEMU emulator version 1.7.50, Copyright (c) 2003-2008 Fabrice Bellard
(a build of Arch qemu-git package from 2013-12-24, but the errors is the same on stock 1.7.0 Qemu)
uname -a:
Linux miner 3.13.0-2-mainline #1 SMP PREEMPT Wed Jan 1 14:37:23 CET 2014 x86_64 GNU/Linux
(Arch linux-mainline package with 3.13-rc5, but errors are exactly the same on stock 3.12.6-1)
kernel command line:
Command line: BOOT_IMAGE=
qemu command line:
/usr/bin/
-cpu Opteron_G4 -smp 2,sockets=
-m 4096 -mem-prealloc -mem-path /dev/hugepages \
-nodefaults -M q35 -enable-kvm \
-monitor stdio -device ioh3420,
-device vfio-pci,
-device vfio-pci,
-usb -usbdevice host:072f:9000 \
-netdev bridge,
-device virtio-
-drive file=/home/
-drive file=/home/
-drive file=/home/
-boot c \
-serial none \
-parallel none \
-vga none \
-nographic
lspci:
00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h (Models 10h-1fh) Processor Root Complex
00:00.2 IOMMU: Advanced Micro Devices, Inc. [AMD] Family 15h (Models 10h-1fh) I/O Memory Management Unit
00:01.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Trinity [Radeon HD 7660D]
00:02.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] Family 15h (Models 10h-1fh) Processor Root Port
00:10.0 USB controller: Advanced Micro Devices, Inc. [AMD] FCH USB XHCI Controller (rev 03)
00:10.1 USB controller: Advanced Micro Devices, Inc. [AMD] FCH USB XHCI Controller (rev 03)
00:11.0 SATA controller: Advanced Micro Devices, Inc. [AMD] FCH SATA Controller [AHCI mode] (rev 40)
00:12.0 USB controller: Advanced Micro Devices, Inc. [AMD] FCH USB OHCI Controller (rev 11)
00:12.2 USB controller: Advanced Micro Devices, Inc. [AMD] FCH USB EHCI Controller (rev 11)
00:13.0 USB controller: Advanced Micro Devices, Inc. [AMD] FCH USB OHCI Controller (rev 11)
00:13.2 USB controller: Advanced Micro Devices, Inc. [AMD] FCH USB EHCI Controller (rev 11)
00:14.0 SMBus: Advanced Micro Devices, Inc. [AMD] FCH SMBus Controller (rev 14)
00:14.1 IDE interface: Advanced Micro Devices, Inc. [AMD] FCH IDE Controller
00:14.2 Audio device: Advanced Micro Devices, Inc. [AMD] FCH Azalia Controller (rev 01)
00:14.3 ISA bridge: Advanced Micro Devices, Inc. [AMD] FCH LPC Bridge (rev 11)
00:14.4 PCI bridge: Advanced Micro Devices, Inc. [AMD] FCH PCI Bridge (rev 40)
00:14.5 USB controller: Advanced Micro Devices, Inc. [AMD] FCH USB OHCI Controller (rev 11)
00:15.0 PCI bridge: Advanced Micro Devices, Inc. [AMD] Hudson PCI to PCI bridge (PCIE port 0)
00:15.2 PCI bridge: Advanced Micro Devices, Inc. [AMD] Hudson PCI to PCI bridge (PCIE port 2)
00:15.3 PCI bridge: Advanced Micro Devices, Inc. [AMD] Hudson PCI to PCI bridge (PCIE port 3)
00:18.0 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h (Models 10h-1fh) Processor Function 0
00:18.1 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h (Models 10h-1fh) Processor Function 1
00:18.2 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h (Models 10h-1fh) Processor Function 2
00:18.3 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h (Models 10h-1fh) Processor Function 3
00:18.4 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h (Models 10h-1fh) Processor Function 4
00:18.5 Host bridge: Advanced Micro Devices, Inc. [AMD] Family 15h (Models 10h-1fh) Processor Function 5
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Tahiti LE [Radeon HD 7870 XT]
01:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Tahiti XT HDMI Audio [Radeon HD 7970 Series]
03:00.0 USB controller: MosChip Semiconductor Technology Ltd. MCS9990 PCIe to 4‐Port USB 2.0 Host Controller
03:00.1 USB controller: MosChip Semiconductor Technology Ltd. MCS9990 PCIe to 4‐Port USB 2.0 Host Controller
03:00.2 USB controller: MosChip Semiconductor Technology Ltd. MCS9990 PCIe to 4‐Port USB 2.0 Host Controller
03:00.3 USB controller: MosChip Semiconductor Technology Ltd. MCS9990 PCIe to 4‐Port USB 2.0 Host Controller
03:00.4 USB controller: MosChip Semiconductor Technology Ltd. MCS9990 PCIe to 4‐Port USB 2.0 Host Controller
03:00.5 USB controller: MosChip Semiconductor Technology Ltd. MCS9990 PCIe to 4‐Port USB 2.0 Host Controller
03:00.6 USB controller: MosChip Semiconductor Technology Ltd. MCS9990 PCIe to 4‐Port USB 2.0 Host Controller
03:00.7 USB controller: MosChip Semiconductor Technology Ltd. MCS9990 PCIe to 4‐Port USB 2.0 Host Controller
04:00.0 USB controller: ASMedia Technology Inc. ASM1042 SuperSpeed USB Host Controller
05:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 06)
Please let me now, if any other information is needed.
Does this only happen with hugepages? Does it happen with 2M hugepages?