[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Xen-devel] How to determine memory size in HVM
On Tue, Jun 9, 2009 at 6:38 AM, Keir Fraser<keir.fraser@xxxxxxxxxxxxx> wrote:
> The new HVM populate-on-demand memory support should be able to help. I
> suppose also some tools changes may be necessary in conjunction with this.
> Or domain config changes. George Dunlap and Steven Smith can probably
I know all about the populate-on-demand stuff, but not very much about
the tools, and unfortunately that's where the change is needed, I
So the basic thing we need is to have not a single memory variable,
but two variables: "maximum" and "target". Maximum is what is
reported to a VM at boot, and target is how much we want it to
What populate-on-demand allows you to do is to tell a fully
virtualized VM it has maximum memory (say, 1G), but only give it
target memory (say, 256M). When the VM boots, the OS will check its
e820 mapping, see 1G reported there, and set things up appropriately.
Then, when the balloon driver comes up, it will inflate the balloon to
The problem with rebooting sounds like it's due to the tools not being
designed with this distinction in mind. So "xm mem-set" should change
target, but not maxmem; and ideally, when the VM reboots, it should be
created with the (maxmem,target) populate-on-demand split again.
Xen-devel mailing list