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

Re: [Xen-devel] implementing memory ballooning in WIndows



> Do the Citrix Windows PV drivers implement memory ballooning? I've been
> looking at this a bit for GPLPV and the avenues I can see are:
> 
> 1. Memory can be added via ACPI hot-add, but I assume that that isn't
> implemented in the GPL qemu code (or is it?) and only works for Windows
> Server Enterprise, not Vista, XP, or Server Standard.
> 2. I can give memory back via just allocating a physical page and giving
> it back to Xen
Our drivers do implement ballooning (although it's not actually hooked
up to the control tools, for mostly tedious reasons), and they do it
using approach 2.

Approach 1 does have the advantage that you can later increase a
domain's memory allocation beyond its boot-time size, but that's
obviated to some extent by the new populate-on-demand support, and, as
you say, memory hot add is quite heavily restricted by Microsoft's
licensing.

> Assuming that #1 is undesirable for the reasons stated above, does
> anyone have any starting point? Is there a document describing how
> dynamic memory works with HVM domains?
Alas no.  The Linux balloon driver has been sighted working in an
unmodified driver build in the past, so that might be worth
investigating, but I couldn't tell you whether it's working now.

This isn't actually particularly difficult; you pretty much just want
to grab some pages from Windows and then feed them to Xen using
HYPERVISOR_memory_op(XENMEM_decrease_reservation).

Steven.

Attachment: signature.asc
Description: Digital signature

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.