]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemu: monitor: Properly propagate the 'qemu_id' field through the matcher
authorPeter Krempa <pkrempa@redhat.com>
Tue, 22 Nov 2016 08:32:11 +0000 (09:32 +0100)
committerPeter Krempa <pkrempa@redhat.com>
Tue, 22 Nov 2016 09:44:17 +0000 (10:44 +0100)
Commit 3f71c797689a4a70 added 'qemu_id' field to track the id of the cpu
as reported by query-cpus. The patch did not include changes necessary
to propagate the id through the functions matching the data to the
libvirt cpu structures and thus all vcpus had id 0.

src/qemu/qemu_monitor.c
tests/qemumonitorjsondata/qemumonitorjson-cpuinfo-ppc64-basic.data
tests/qemumonitorjsondata/qemumonitorjson-cpuinfo-ppc64-hotplug-1.data
tests/qemumonitorjsondata/qemumonitorjson-cpuinfo-ppc64-hotplug-2.data
tests/qemumonitorjsondata/qemumonitorjson-cpuinfo-ppc64-hotplug-4.data
tests/qemumonitorjsondata/qemumonitorjson-cpuinfo-ppc64-no-threads.data
tests/qemumonitorjsondata/qemumonitorjson-cpuinfo-x86-basic-pluggable.data
tests/qemumonitorjsondata/qemumonitorjson-cpuinfo-x86-full.data
tests/qemumonitorjsontest.c

index 3ff31e49f73d1fda6146b5f2b90550ea05fe9632..3f86887b030c14d5db65244a52d1c444e8b11ea8 100644 (file)
@@ -1672,6 +1672,7 @@ qemuMonitorCPUInfoClear(qemuMonitorCPUInfoPtr cpus,
 
     for (i = 0; i < ncpus; i++) {
         cpus[i].id = 0;
+        cpus[i].qemu_id = -1;
         cpus[i].socket_id = -1;
         cpus[i].core_id = -1;
         cpus[i].thread_id = -1;
@@ -1729,6 +1730,7 @@ qemuMonitorGetCPUInfoLegacy(struct qemuMonitorQueryCpusEntry *cpuentries,
         if (i < ncpuentries) {
             vcpus[i].tid = cpuentries[i].tid;
             vcpus[i].halted = cpuentries[i].halted;
+            vcpus[i].qemu_id = cpuentries[i].qemu_id;
         }
 
         /* for legacy hotplug to work we need to fake the vcpu count added by
@@ -1866,6 +1868,7 @@ qemuMonitorGetCPUInfoHotplug(struct qemuMonitorQueryHotpluggableCpusEntry *hotpl
             }
         }
 
+        vcpus[anyvcpu].qemu_id = cpuentries[j].qemu_id;
         vcpus[anyvcpu].tid = cpuentries[j].tid;
         vcpus[anyvcpu].halted = cpuentries[j].halted;
     }
index 99696481e17c1afee709b4e532b4c981bb3f2f02..eaa797ccb5fab70fcbfdade8571a4dc10fbb6568 100644 (file)
@@ -3,6 +3,7 @@
     hotpluggable=no
     thread-id='21925'
     enable-id='1'
+    query-cpus-id='0'
     type='host-spapr-cpu-core'
     qom_path='/machine/unattached/device[1]'
     topology: core='0' vcpus='8'
     online=yes
     hotpluggable=no
     thread-id='21926'
+    query-cpus-id='1'
 [vcpu libvirt-id='2']
     online=yes
     hotpluggable=no
     thread-id='21927'
+    query-cpus-id='2'
 [vcpu libvirt-id='3']
     online=yes
     hotpluggable=no
     thread-id='21928'
+    query-cpus-id='3'
 [vcpu libvirt-id='4']
     online=yes
     hotpluggable=no
     thread-id='21930'
+    query-cpus-id='4'
 [vcpu libvirt-id='5']
     online=yes
     hotpluggable=no
     thread-id='21931'
+    query-cpus-id='5'
 [vcpu libvirt-id='6']
     online=yes
     hotpluggable=no
     thread-id='21932'
+    query-cpus-id='6'
 [vcpu libvirt-id='7']
     online=yes
     hotpluggable=no
     thread-id='21933'
+    query-cpus-id='7'
 [vcpu libvirt-id='8']
     online=no
     hotpluggable=yes
index 643f6eceefb45c18e2ebefa9a24a9916e50b26bd..a0aca8688355f0d57f4f2882fe6b62328ee03e77 100644 (file)
@@ -3,6 +3,7 @@
     hotpluggable=no
     thread-id='21925'
     enable-id='1'
+    query-cpus-id='0'
     type='host-spapr-cpu-core'
     qom_path='/machine/unattached/device[1]'
     topology: core='0' vcpus='8'
     online=yes
     hotpluggable=no
     thread-id='21926'
+    query-cpus-id='1'
 [vcpu libvirt-id='2']
     online=yes
     hotpluggable=no
     thread-id='21927'
+    query-cpus-id='2'
 [vcpu libvirt-id='3']
     online=yes
     hotpluggable=no
     thread-id='21928'
+    query-cpus-id='3'
 [vcpu libvirt-id='4']
     online=yes
     hotpluggable=no
     thread-id='21930'
+    query-cpus-id='4'
 [vcpu libvirt-id='5']
     online=yes
     hotpluggable=no
     thread-id='21931'
+    query-cpus-id='5'
 [vcpu libvirt-id='6']
     online=yes
     hotpluggable=no
     thread-id='21932'
+    query-cpus-id='6'
 [vcpu libvirt-id='7']
     online=yes
     hotpluggable=no
     thread-id='21933'
+    query-cpus-id='7'
 [vcpu libvirt-id='8']
     online=yes
     hotpluggable=yes
     thread-id='22131'
     enable-id='2'
+    query-cpus-id='8'
     type='host-spapr-cpu-core'
     alias='vcpu0'
     qom_path='/machine/peripheral/vcpu0'
     online=yes
     hotpluggable=yes
     thread-id='22132'
+    query-cpus-id='9'
 [vcpu libvirt-id='10']
     online=yes
     hotpluggable=yes
     thread-id='22133'
+    query-cpus-id='10'
 [vcpu libvirt-id='11']
     online=yes
     hotpluggable=yes
     thread-id='22134'
+    query-cpus-id='11'
 [vcpu libvirt-id='12']
     online=yes
     hotpluggable=yes
     thread-id='22135'
+    query-cpus-id='12'
 [vcpu libvirt-id='13']
     online=yes
     hotpluggable=yes
     thread-id='22136'
+    query-cpus-id='13'
 [vcpu libvirt-id='14']
     online=yes
     hotpluggable=yes
     thread-id='22137'
+    query-cpus-id='14'
 [vcpu libvirt-id='15']
     online=yes
     hotpluggable=yes
     thread-id='22138'
+    query-cpus-id='15'
 [vcpu libvirt-id='16']
     online=no
     hotpluggable=yes
index 43780ee676b4a64cea675aaf91869f190f78dd4b..7a367ce1ed113ef823f375c8c14f81b1e29e3251 100644 (file)
@@ -3,6 +3,7 @@
     hotpluggable=no
     thread-id='21925'
     enable-id='1'
+    query-cpus-id='0'
     type='host-spapr-cpu-core'
     qom_path='/machine/unattached/device[1]'
     topology: core='0' vcpus='8'
     online=yes
     hotpluggable=no
     thread-id='21926'
+    query-cpus-id='1'
 [vcpu libvirt-id='2']
     online=yes
     hotpluggable=no
     thread-id='21927'
+    query-cpus-id='2'
 [vcpu libvirt-id='3']
     online=yes
     hotpluggable=no
     thread-id='21928'
+    query-cpus-id='3'
 [vcpu libvirt-id='4']
     online=yes
     hotpluggable=no
     thread-id='21930'
+    query-cpus-id='4'
 [vcpu libvirt-id='5']
     online=yes
     hotpluggable=no
     thread-id='21931'
+    query-cpus-id='5'
 [vcpu libvirt-id='6']
     online=yes
     hotpluggable=no
     thread-id='21932'
+    query-cpus-id='6'
 [vcpu libvirt-id='7']
     online=yes
     hotpluggable=no
     thread-id='21933'
+    query-cpus-id='7'
 [vcpu libvirt-id='8']
     online=yes
     hotpluggable=yes
     thread-id='22131'
     enable-id='2'
+    query-cpus-id='8'
     type='host-spapr-cpu-core'
     alias='vcpu0'
     qom_path='/machine/peripheral/vcpu0'
     online=yes
     hotpluggable=yes
     thread-id='22132'
+    query-cpus-id='9'
 [vcpu libvirt-id='10']
     online=yes
     hotpluggable=yes
     thread-id='22133'
+    query-cpus-id='10'
 [vcpu libvirt-id='11']
     online=yes
     hotpluggable=yes
     thread-id='22134'
+    query-cpus-id='11'
 [vcpu libvirt-id='12']
     online=yes
     hotpluggable=yes
     thread-id='22135'
+    query-cpus-id='12'
 [vcpu libvirt-id='13']
     online=yes
     hotpluggable=yes
     thread-id='22136'
+    query-cpus-id='13'
 [vcpu libvirt-id='14']
     online=yes
     hotpluggable=yes
     thread-id='22137'
+    query-cpus-id='14'
 [vcpu libvirt-id='15']
     online=yes
     hotpluggable=yes
     thread-id='22138'
+    query-cpus-id='15'
 [vcpu libvirt-id='16']
     online=yes
     hotpluggable=yes
     thread-id='22223'
     enable-id='3'
+    query-cpus-id='16'
     type='host-spapr-cpu-core'
     alias='vcpu1'
     qom_path='/machine/peripheral/vcpu1'
     online=yes
     hotpluggable=yes
     thread-id='22224'
+    query-cpus-id='17'
 [vcpu libvirt-id='18']
     online=yes
     hotpluggable=yes
     thread-id='22225'
+    query-cpus-id='18'
 [vcpu libvirt-id='19']
     online=yes
     hotpluggable=yes
     thread-id='22226'
+    query-cpus-id='19'
 [vcpu libvirt-id='20']
     online=yes
     hotpluggable=yes
     thread-id='22227'
+    query-cpus-id='20'
 [vcpu libvirt-id='21']
     online=yes
     hotpluggable=yes
     thread-id='22228'
+    query-cpus-id='21'
 [vcpu libvirt-id='22']
     online=yes
     hotpluggable=yes
     thread-id='22229'
+    query-cpus-id='22'
 [vcpu libvirt-id='23']
     online=yes
     hotpluggable=yes
     thread-id='22230'
+    query-cpus-id='23'
index dfa2d3f1719dd3d044d738f8d88c5749a5f5630a..7c9088928bcac080bd7fa12f84185475158bd8df 100644 (file)
@@ -3,6 +3,7 @@
     hotpluggable=no
     thread-id='21925'
     enable-id='1'
+    query-cpus-id='0'
     type='host-spapr-cpu-core'
     qom_path='/machine/unattached/device[1]'
     topology: core='0' vcpus='8'
     online=yes
     hotpluggable=no
     thread-id='21926'
+    query-cpus-id='1'
 [vcpu libvirt-id='2']
     online=yes
     hotpluggable=no
     thread-id='21927'
+    query-cpus-id='2'
 [vcpu libvirt-id='3']
     online=yes
     hotpluggable=no
     thread-id='21928'
+    query-cpus-id='3'
 [vcpu libvirt-id='4']
     online=yes
     hotpluggable=no
     thread-id='21930'
+    query-cpus-id='4'
 [vcpu libvirt-id='5']
     online=yes
     hotpluggable=no
     thread-id='21931'
+    query-cpus-id='5'
 [vcpu libvirt-id='6']
     online=yes
     hotpluggable=no
     thread-id='21932'
+    query-cpus-id='6'
 [vcpu libvirt-id='7']
     online=yes
     hotpluggable=no
     thread-id='21933'
+    query-cpus-id='7'
 [vcpu libvirt-id='8']
     online=yes
     hotpluggable=yes
     thread-id='23170'
     enable-id='3'
+    query-cpus-id='16'
     type='host-spapr-cpu-core'
     alias='vcpu0'
     qom_path='/machine/peripheral/vcpu0'
     online=yes
     hotpluggable=yes
     thread-id='23171'
+    query-cpus-id='17'
 [vcpu libvirt-id='10']
     online=yes
     hotpluggable=yes
     thread-id='23172'
+    query-cpus-id='18'
 [vcpu libvirt-id='11']
     online=yes
     hotpluggable=yes
     thread-id='23173'
+    query-cpus-id='19'
 [vcpu libvirt-id='12']
     online=yes
     hotpluggable=yes
     thread-id='23174'
+    query-cpus-id='20'
 [vcpu libvirt-id='13']
     online=yes
     hotpluggable=yes
     thread-id='23175'
+    query-cpus-id='21'
 [vcpu libvirt-id='14']
     online=yes
     hotpluggable=yes
     thread-id='23176'
+    query-cpus-id='22'
 [vcpu libvirt-id='15']
     online=yes
     hotpluggable=yes
     thread-id='23177'
+    query-cpus-id='23'
 [vcpu libvirt-id='16']
     online=yes
     hotpluggable=yes
     thread-id='22741'
     enable-id='2'
+    query-cpus-id='8'
     type='host-spapr-cpu-core'
     alias='vcpu1'
     qom_path='/machine/peripheral/vcpu1'
     online=yes
     hotpluggable=yes
     thread-id='22742'
+    query-cpus-id='9'
 [vcpu libvirt-id='18']
     online=yes
     hotpluggable=yes
     thread-id='22743'
+    query-cpus-id='10'
 [vcpu libvirt-id='19']
     online=yes
     hotpluggable=yes
     thread-id='22744'
+    query-cpus-id='11'
 [vcpu libvirt-id='20']
     online=yes
     hotpluggable=yes
     thread-id='22745'
+    query-cpus-id='12'
 [vcpu libvirt-id='21']
     online=yes
     hotpluggable=yes
     thread-id='22746'
+    query-cpus-id='13'
 [vcpu libvirt-id='22']
     online=yes
     hotpluggable=yes
     thread-id='22747'
+    query-cpus-id='14'
 [vcpu libvirt-id='23']
     online=yes
     hotpluggable=yes
     thread-id='22748'
+    query-cpus-id='15'
index 2519ad383a20868a3daffabefc2b14c76f2bcb9e..2612fa6a08c70a97bb5d2469ec46a21e9674a714 100644 (file)
@@ -3,6 +3,7 @@
     hotpluggable=no
     thread-id='35232'
     enable-id='1'
+    query-cpus-id='0'
     type='host-spapr-cpu-core'
     qom_path='/machine/unattached/device[1]'
     topology: core='0' vcpus='1'
@@ -11,6 +12,7 @@
     hotpluggable=no
     thread-id='35233'
     enable-id='2'
+    query-cpus-id='1'
     type='host-spapr-cpu-core'
     qom_path='/machine/unattached/device[2]'
     topology: core='8' vcpus='1'
@@ -19,6 +21,7 @@
     hotpluggable=no
     thread-id='35234'
     enable-id='3'
+    query-cpus-id='2'
     type='host-spapr-cpu-core'
     qom_path='/machine/unattached/device[3]'
     topology: core='16' vcpus='1'
@@ -27,6 +30,7 @@
     hotpluggable=no
     thread-id='35235'
     enable-id='4'
+    query-cpus-id='3'
     type='host-spapr-cpu-core'
     qom_path='/machine/unattached/device[4]'
     topology: core='24' vcpus='1'
@@ -35,6 +39,7 @@
     hotpluggable=no
     thread-id='35236'
     enable-id='5'
+    query-cpus-id='4'
     type='host-spapr-cpu-core'
     qom_path='/machine/unattached/device[5]'
     topology: core='32' vcpus='1'
@@ -43,6 +48,7 @@
     hotpluggable=no
     thread-id='35237'
     enable-id='6'
+    query-cpus-id='5'
     type='host-spapr-cpu-core'
     qom_path='/machine/unattached/device[6]'
     topology: core='40' vcpus='1'
@@ -51,6 +57,7 @@
     hotpluggable=no
     thread-id='35238'
     enable-id='7'
+    query-cpus-id='6'
     type='host-spapr-cpu-core'
     qom_path='/machine/unattached/device[7]'
     topology: core='48' vcpus='1'
@@ -59,6 +66,7 @@
     hotpluggable=no
     thread-id='35239'
     enable-id='8'
+    query-cpus-id='7'
     type='host-spapr-cpu-core'
     qom_path='/machine/unattached/device[8]'
     topology: core='56' vcpus='1'
index 1fea0774466ad32e163a07821b1a52a9050de4e0..93cefb9dd24569f71bc9b0bead1984caaf286450 100644 (file)
@@ -3,6 +3,7 @@
     hotpluggable=no
     thread-id='518291'
     enable-id='1'
+    query-cpus-id='0'
     type='qemu64-x86_64-cpu'
     qom_path='/machine/unattached/device[0]'
     topology: socket='0' core='0' thread='0' vcpus='1'
@@ -11,6 +12,7 @@
     hotpluggable=no
     thread-id='518292'
     enable-id='2'
+    query-cpus-id='1'
     type='qemu64-x86_64-cpu'
     qom_path='/machine/unattached/device[2]'
     topology: socket='0' core='0' thread='1' vcpus='1'
@@ -19,6 +21,7 @@
     hotpluggable=no
     thread-id='518294'
     enable-id='3'
+    query-cpus-id='2'
     type='qemu64-x86_64-cpu'
     qom_path='/machine/unattached/device[3]'
     topology: socket='0' core='1' thread='0' vcpus='1'
@@ -27,6 +30,7 @@
     hotpluggable=no
     thread-id='518295'
     enable-id='4'
+    query-cpus-id='3'
     type='qemu64-x86_64-cpu'
     qom_path='/machine/unattached/device[4]'
     topology: socket='0' core='1' thread='1' vcpus='1'
@@ -35,6 +39,7 @@
     hotpluggable=no
     thread-id='518296'
     enable-id='5'
+    query-cpus-id='4'
     type='qemu64-x86_64-cpu'
     qom_path='/machine/unattached/device[5]'
     topology: socket='1' core='0' thread='0' vcpus='1'
index c8278924764c1d6d0afebe481c4f330bc9ee567b..1908e397c5628a2db55e6cda1466b83fb08b7459 100644 (file)
@@ -3,6 +3,7 @@
     hotpluggable=no
     thread-id='895040'
     enable-id='1'
+    query-cpus-id='0'
     type='Broadwell-x86_64-cpu'
     qom_path='/machine/unattached/device[0]'
     topology: socket='0' core='0' thread='0' vcpus='1'
@@ -11,6 +12,7 @@
     hotpluggable=yes
     thread-id='895056'
     enable-id='2'
+    query-cpus-id='1'
     type='Broadwell-x86_64-cpu'
     alias='vcpu1'
     qom_path='/machine/peripheral/vcpu1'
@@ -20,6 +22,7 @@
     hotpluggable=yes
     thread-id='895057'
     enable-id='3'
+    query-cpus-id='2'
     type='Broadwell-x86_64-cpu'
     alias='vcpu2'
     qom_path='/machine/peripheral/vcpu2'
@@ -29,6 +32,7 @@
     hotpluggable=yes
     thread-id='895058'
     enable-id='4'
+    query-cpus-id='3'
     type='Broadwell-x86_64-cpu'
     alias='vcpu3'
     qom_path='/machine/peripheral/vcpu3'
@@ -38,6 +42,7 @@
     hotpluggable=yes
     thread-id='895059'
     enable-id='5'
+    query-cpus-id='4'
     type='Broadwell-x86_64-cpu'
     alias='vcpu4'
     qom_path='/machine/peripheral/vcpu4'
@@ -47,6 +52,7 @@
     hotpluggable=yes
     thread-id='895060'
     enable-id='6'
+    query-cpus-id='5'
     type='Broadwell-x86_64-cpu'
     alias='vcpu5'
     qom_path='/machine/peripheral/vcpu5'
@@ -56,6 +62,7 @@
     hotpluggable=yes
     thread-id='895061'
     enable-id='7'
+    query-cpus-id='6'
     type='Broadwell-x86_64-cpu'
     alias='vcpu6'
     qom_path='/machine/peripheral/vcpu6'
@@ -65,6 +72,7 @@
     hotpluggable=yes
     thread-id='895062'
     enable-id='8'
+    query-cpus-id='7'
     type='Broadwell-x86_64-cpu'
     alias='vcpu7'
     qom_path='/machine/peripheral/vcpu7'
@@ -74,6 +82,7 @@
     hotpluggable=yes
     thread-id='895063'
     enable-id='9'
+    query-cpus-id='8'
     type='Broadwell-x86_64-cpu'
     alias='vcpu8'
     qom_path='/machine/peripheral/vcpu8'
@@ -83,6 +92,7 @@
     hotpluggable=yes
     thread-id='895064'
     enable-id='10'
+    query-cpus-id='9'
     type='Broadwell-x86_64-cpu'
     alias='vcpu9'
     qom_path='/machine/peripheral/vcpu9'
     hotpluggable=yes
     thread-id='895065'
     enable-id='11'
+    query-cpus-id='10'
     type='Broadwell-x86_64-cpu'
     alias='vcpu10'
     qom_path='/machine/peripheral/vcpu10'
index a60f0a0bfe612042c7303b2d7879846c4a96ec40..a7d4d5a1455ee1e4dd30bc6dfc86a53e1d3894ca 100644 (file)
@@ -2491,6 +2491,9 @@ testQemuMonitorCPUInfoFormat(qemuMonitorCPUInfoPtr vcpus,
         if (vcpu->id != 0)
             virBufferAsprintf(&buf, "enable-id='%d'\n", vcpu->id);
 
+        if (vcpu->qemu_id != -1)
+            virBufferAsprintf(&buf, "query-cpus-id='%d'\n", vcpu->qemu_id);
+
         if (vcpu->type)
             virBufferAsprintf(&buf, "type='%s'\n", vcpu->type);