[pve-devel] [PATCH docs 1/2] pci passthrough: mention incompatibility with ballooning

Friedrich Weber f.weber at proxmox.com
Tue Nov 14 11:20:40 CET 2023

On 14/11/2023 09:30, Fiona Ebner wrote:
> Am 13.11.23 um 18:09 schrieb Friedrich Weber:
>> +xref:qm_ballooning[Automatic memory allocation (ballooning)] is not possible
>> +when using PCI(e) passthrough. As the PCI device may use DMA (Direct Memory
>> +Access), QEMU needs to map the complete guest memory on VM startup. Hence, the
>> +QEMU process will use at least the (maximum) configured amount of VM memory and
>> +setting a minimum amount does not have any effect. When using PCI(e)
>> +passthrough, it is recommended to set memory and minimum memory to the same
>> +amount and keep the balloning device enabled. However, keep in mind that the
> typo: s/balloning/ballooning/

Oops, thanks.

> Is there any advantage to keeping the ballooning device enabled?
>> +memory consumption reported in the GUI for the VM may be much lower than the
>> +memory consumption of the QEMU process.
> Maybe mention what the reported value is?

In my understanding: If the ballooning device is enabled (and a balloon
driver present in the guest), the VM memory usage numbers are taken as
reported by the balloon driver [1] (I'd say "as seen from within the
guest"?). If the ballooning device is disabled, they are inferred from
the rss and vsize of the QEMU process [2], so I'd say "as seen from the

I guess in the end the user has to decide which perspective they care
about? I'll try to make this clearer in the v2.


More information about the pve-devel mailing list