Comment 11 for bug 1769053

Revision history for this message
Christian Ehrhardt  (paelzer) wrote : Re: Cannot start a guest with more than 1TB of RAM

> Interesting; I thought this was supposed to work.

Exactly that was my thought when triaging it initially
Furthermore I assume people working la57 (https://lwn.net/Articles/730925/) and such ran tests on much bigger sizes.

> Ah right Dan, if you're seeing the 40 bits physical in the guest you definitely need to try the flags I suggest in comment 6; host-phys-bits=true should work for you.

I tested Bionic to be at least on libvirt 4.0 / qemu 2.11.1 when we want to check things under the "supposed to work now" flag.

Defaults:
Host: address sizes : 46 bits physical, 48 bits virtual
Guest: address sizes : 40 bits physical, 48 bits virtual

I ensured that with option -cpu host,host-phys-bits=true set I successfully get what my host can provide in the guest:
Guest: address sizes : 46 bits physical, 48 bits virtual

Starting a guest with that >1TB (that would be mostly on swap if needed) works just fine as expected. Here ~1063 GB from /proc/meminfo
MemTotal: 1114676492 kB

I also checked a more compatible approach like -cpu qemu64,phys-bits=42 and that works as well.

IMHO - if anything - one could argue that libvirt/qemu could be smarter about e.g. auto adding those arguments (or print a warning) when crossing a certain memory size.

So for now I'd stick to the "actually works" summary and keep the status to incomplete.