On 06/27/2017 10:27 AM, Peter Krempa wrote:
vcpu properties gathered from query-hotpluggable cpus need to be
passed
back to qemu. As qemu did not use the node-id property until now and
libvirt forgot to pass it back properly (it was parsed but not passed
around) we did not honor this.
This patch adds node-id to the structures where it was missing and
passes it around as necessary.
The test data was generated with a VM with following config:
<numa>
<cell id='0' cpus='0,2,4,6' memory='512000'
unit='KiB'/>
<cell id='1' cpus='1,3,5,7' memory='512000'
unit='KiB'/>
</numa>
Resolves:
https://bugzilla.redhat.com/show_bug.cgi?id=1452053
---
src/qemu/qemu_command.c | 4 +
src/qemu/qemu_domain.c | 1 +
src/qemu/qemu_domain.h | 1 +
src/qemu/qemu_monitor.c | 2 +
src/qemu/qemu_monitor.h | 1 +
...qemumonitorjson-cpuinfo-x86-node-full-cpus.json | 35 +++++++++
...umonitorjson-cpuinfo-x86-node-full-hotplug.json | 87 ++++++++++++++++++++++
.../qemumonitorjson-cpuinfo-x86-node-full.data | 48 ++++++++++++
tests/qemumonitorjsontest.c | 3 +
9 files changed, 182 insertions(+)
create mode 100644
tests/qemumonitorjsondata/qemumonitorjson-cpuinfo-x86-node-full-cpus.json
create mode 100644
tests/qemumonitorjsondata/qemumonitorjson-cpuinfo-x86-node-full-hotplug.json
create mode 100644 tests/qemumonitorjsondata/qemumonitorjson-cpuinfo-x86-node-full.data
Searching through sources for 'core_id', 'socket_id', and
'thread_id' -
would qemuProcessValidateHotpluggableVcpus need to be adjusted as well?
Reviewed-by: John Ferlan <jferlan(a)redhat.com>
John
FWIW: Perhaps missed as part of commit '1213f0f8a' the comments to
qemuMonitorJSONProcessHotpluggableCpusReply do not include node-id.