On 01/27/2011 09:10 AM, Matthias Bolte wrote:
2011/1/27 Justin Clift <jclift(a)redhat.com>:
> +Some hypervisors require a larger granularity than kilobytes, rounding down
> +or rejecting requests that are not an even multiple of the desired amount.
> +vSphere/ESX is one of these, requiring the parameter to be evenly divisible
> +by 4MB. For example with vSphere/ESX, 262144 (256MB) is valid as it's a
> +multiple of 4MB; 263168 (257MB) is not valid as it's not a multiple of 4MB;
> +266240 (260MB) is also valid, as it's a multiple of 4MB.
Do we need three examples, or would two be sufficient?
For example, vSphere/ESX has a 4MB granularity, so 263168 (257MB) would
be rejected while 266240 (260MB) is valid.
Well, currently this is true. But I'm preparing a patch that
makes
libvirt round memory/storage request up instead of down when dividing
it for a larger granularity. That way you'll get at least what you
requested.
Let's go ahead and push it as-is, since it is accurate for the current
state of the tree,
When my patch gets accepted your patch needs some small tweaks :)
then update it as part of the improved semantics.
--
Eric Blake eblake(a)redhat.com +1-801-349-2682
Libvirt virtualization library
http://libvirt.org