On Wed, May 23, 2018 at 18:18:01 +0200, Andrea Bolognani wrote:
This commit is best viewed with 'git show -w'.
Signed-off-by: Andrea Bolognani <abologna(a)redhat.com>
---
docs/schemas/domaincommon.rng | 21 ++++++---
src/conf/domain_conf.c | 44 ++++++++++++++++---
src/conf/domain_conf.h | 1 +
tests/qemuxml2argvdata/pseries-features.xml | 4 +-
tests/qemuxml2argvtest.c | 1 +
tests/qemuxml2xmloutdata/pseries-features.xml | 4 +-
tests/qemuxml2xmltest.c | 1 +
7 files changed, 60 insertions(+), 16 deletions(-)
[...]
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 20b845f02a..e84cfb0d05 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -19493,8 +19493,24 @@ virDomainDefParseXML(xmlDocPtr xml,
VIR_FREE(tmp);
}
- if (def->hpt_resizing != VIR_DOMAIN_HPT_RESIZING_NONE)
+ if (virDomainParseScaledValue("./features/hpt/maxpagesize",
+ NULL,
+ ctxt,
+ &def->hpt_maxpagesize,
+ 1024,
+ ULLONG_MAX,
+ false) < 0) {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
+ "%s",
+ _("Unable to parse HPT maxpagesize setting"));
+ goto error;
+ }
+ def->hpt_maxpagesize = VIR_ROUND_UP(def->hpt_maxpagesize, 1024);
The code in the patch using it with qemu actually expects so this is a
power of 2, so you'll need a different rounding function.