• J
    libxl: fix reporting of maximum memory · d2b77608
    Jim Fehlig 提交于
    The libxl driver reports different values of maximum memory depending
    on state of a domain. If inactive, maximum memory value is reported
    correctly. When active, maximum memory is derived from max_pages value
    returned by the XEN_SYSCTL_getdomaininfolist sysctl operation. But
    max_pages can be changed by toolstacks and does not necessarily
    represent the maximum memory a domain can use during its active
    lifetime.
    
    A better location for determining a domain's maximum memory is the
    /local/domain/<id>/memory/static-max node in xenstore. This value
    is set from the libxl_domain_build_info.max_memkb field when creating
    the domain. Currently it cannot be changed nor can its value be
    exceeded by a balloon operation. From libvirt's perspective, always
    reporting maximum memory with virDomainDefGetMemoryTotal() will produce
    the same results as reading the static-max node in xenstore.
    Signed-off-by: NJim Fehlig <jfehlig@suse.com>
    d2b77608
libxl_driver.c 192.1 KB