[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-discuss] QEMU PCI Passthrough FPGA with more than 2GB never st

From: Jakob Bohm
Subject: Re: [Qemu-discuss] QEMU PCI Passthrough FPGA with more than 2GB never starts
Date: Wed, 10 May 2017 07:42:40 +0200
User-agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0

On 06/05/2017 09:39, Miltos Hatzimihail wrote:
Dear All

I ve got a system with a Xilinx FPGA on a PCI express slot and I am trying to 
pass it through using QEMU with vfio-pci. Here’s my command line:

qemu-system-x86_64 -smp 4,sockets=2,cores=1,threads=2 -machine 
pc-i440fx-xenial,accel=kvm  --cpu qemu64 -enable-kvm -vnc :1   -device 
vfio-pci,host=04:01.0 .. .. .. -mem 2G

The VM starts OK with men = 2G. If I try to assign more memory to this host 
(say 4GB), then the VM doesn’t even boot to the BIOS (it says that ‘This guest 
has initialised the display ‘yet’). The weird thing is that if I omit the 
passthrough, the VM starts ok with 4GB.

The PCI device is configured as follows:

         Region 0: Memory at c1100000 (32-bit, non-prefetchable) [disabled] 
         Region 1: Memory at c0000000 (32-bit, non-prefetchable) [disabled] 
         Region 2: Memory at 80000000 (32-bit, non-prefetchable) [disabled] 
         [virtual] Expansion ROM at c1000000 [disabled] [size=1M]

I tried to find an answer online but I had no luck. What am I missing?


Look at Region 2: It is located at physical (virtual physical?) address
2GB (0x80000000), thus it won't work in a machine with RAM directly
above the 2GB mark.

I don't know what would happen if that card was inserted in a physical
machine with > 2GB RAM.  Maybe there would be a "memory hole" from
0x80000000 to 0xC1120000, maybe it would get assigned different physical

If your host machine where it is actually inserted has more than 2GB RAM,
look at the RAM and PCI memory mappings logged in /var/log/dmesg and in
the /proc/ and /sys/ file systems.


Jakob Bohm, CIO, Partner, WiseMo A/S.  https://www.wisemo.com
Transformervej 29, 2860 Søborg, Denmark.  Direct +45 31 13 16 10
This public discussion message is non-binding and may contain errors.
WiseMo - Remote Service Management for PCs, Phones and Embedded

reply via email to

[Prev in Thread] Current Thread [Next in Thread]