mirror of https://gitee.com/openkylin/libvirt.git
5670c50ffb
When starting QEMU, or when hotplugging a PCI device QEMU might lock some memory. How much? Well, that's an undecidable problem. But despite that, we try to guess. And it more or less works, until there's a counter example. This time, it's a guest with both <hostdev/> and an NVMe <disk/>. I've started a simple guest with 4GiB of memory: # virsh dominfo fedora Max memory: 4194304 KiB Used memory: 4194304 KiB And here are the amounts of memory that QEMU tried to lock, obtained via: grep VmLck /proc/$(pgrep qemu-kvm)/status 1) with just one <hostdev/> VmLck: 4194308 kB 2) with just one NVMe <disk/> VmLck: 4328544 kB 3) with one <hostdev/> and one NVMe <disk/> VmLck: 8522852 kB Now, what's surprising is case 2) where the locked memory exceeds the VM memory. It almost resembles VDPA. Therefore, treat is as such. Unfortunately, I don't have a box with two or more spare NVMe-s so I can't tell for sure. But setting limit too tight means QEMU refuses to start. Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2014030 Signed-off-by: Michal Privoznik <mprivozn@redhat.com> Reviewed-by: Martin Kletzander <mkletzan@redhat.com> |
||
---|---|---|
.. | ||
qemumemlock-pc-hardlimit+hostdev.xml | ||
qemumemlock-pc-hardlimit+locked+hostdev.xml | ||
qemumemlock-pc-hardlimit+locked.xml | ||
qemumemlock-pc-hardlimit.xml | ||
qemumemlock-pc-hostdev-nvme.xml | ||
qemumemlock-pc-hostdev.xml | ||
qemumemlock-pc-kvm.xml | ||
qemumemlock-pc-locked+hostdev.xml | ||
qemumemlock-pc-locked.xml | ||
qemumemlock-pc-tcg.xml | ||
qemumemlock-pseries-hardlimit+hostdev.xml | ||
qemumemlock-pseries-hardlimit+locked+hostdev.xml | ||
qemumemlock-pseries-hardlimit+locked.xml | ||
qemumemlock-pseries-hardlimit.xml | ||
qemumemlock-pseries-hostdev.xml | ||
qemumemlock-pseries-kvm.xml | ||
qemumemlock-pseries-locked+hostdev.xml | ||
qemumemlock-pseries-locked.xml | ||
qemumemlock-pseries-tcg.xml |