From a12e7a3944a737f79472492485ffeef673769edb Mon Sep 17 00:00:00 2001 From: Andrea Bolognani Date: Wed, 23 May 2018 18:18:02 +0200 Subject: [PATCH] qemu: Format HPT maxpagesize on the command line This makes the feature fully functional. https://bugzilla.redhat.com/show_bug.cgi?id=1571078 Signed-off-by: Andrea Bolognani --- src/qemu/qemu_command.c | 12 ++++++++++++ tests/qemuxml2argvdata/pseries-features.args | 3 ++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 1d1d7d6be9..a357d2199c 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -7277,6 +7277,18 @@ qemuBuildMachineCommandLine(virCommandPtr cmd, virBufferAsprintf(&buf, ",resize-hpt=%s", str); } + + if (def->hpt_maxpagesize > 0) { + if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_MACHINE_PSERIES_CAP_HPT_MAX_PAGE_SIZE)) { + virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s", + _("Configuring the page size for HPT guests " + "is not supported by this QEMU binary")); + goto cleanup; + } + + virBufferAsprintf(&buf, ",cap-hpt-max-page-size=%lluk", + def->hpt_maxpagesize); + } } if (cpu && cpu->model && diff --git a/tests/qemuxml2argvdata/pseries-features.args b/tests/qemuxml2argvdata/pseries-features.args index f5c1959cca..12c14715c6 100644 --- a/tests/qemuxml2argvdata/pseries-features.args +++ b/tests/qemuxml2argvdata/pseries-features.args @@ -7,7 +7,8 @@ QEMU_AUDIO_DRV=none \ /usr/bin/qemu-system-ppc64 \ -name guest \ -S \ --machine pseries,accel=tcg,usb=off,dump-guest-core=off,resize-hpt=required \ +-machine pseries,accel=tcg,usb=off,dump-guest-core=off,resize-hpt=required,\ +cap-hpt-max-page-size=1048576k \ -m 512 \ -smp 1,sockets=1,cores=1,threads=1 \ -uuid 1ccfd97d-5eb4-478a-bbe6-88d254c16db7 \