> 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.
signature.asc
Description: Digital signature
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|