[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-ppc] [for-2.7 PATCH v3 14/15] hmp: Add 'info hotpluggable-cpus' HM
From: |
Bharata B Rao |
Subject: |
[Qemu-ppc] [for-2.7 PATCH v3 14/15] hmp: Add 'info hotpluggable-cpus' HMP command |
Date: |
Thu, 12 May 2016 09:18:24 +0530 |
This is the HMP equivalent for QMP query-hotpluggable-cpus.
Signed-off-by: Bharata B Rao <address@hidden>
---
hmp-commands-info.hx | 14 ++++++++++++++
hmp.c | 41 +++++++++++++++++++++++++++++++++++++++++
hmp.h | 1 +
3 files changed, 56 insertions(+)
diff --git a/hmp-commands-info.hx b/hmp-commands-info.hx
index 52539c3..7da9e6c 100644
--- a/hmp-commands-info.hx
+++ b/hmp-commands-info.hx
@@ -800,6 +800,20 @@ STEXI
Display the latest dump status.
ETEXI
+ {
+ .name = "hotpluggable-cpus",
+ .args_type = "",
+ .params = "",
+ .help = "Show information about hotpluggable CPUs",
+ .mhandler.cmd = hmp_hotpluggable_cpus,
+ },
+
+STEXI
address@hidden info hotpluggable-cpus
address@hidden hotpluggable-cpus
+Show information about hotpluggable CPUs
+ETEXI
+
STEXI
@end table
ETEXI
diff --git a/hmp.c b/hmp.c
index d510236..6480ae7 100644
--- a/hmp.c
+++ b/hmp.c
@@ -2381,3 +2381,44 @@ void hmp_info_dump(Monitor *mon, const QDict *qdict)
qapi_free_DumpQueryResult(result);
}
+
+void hmp_hotpluggable_cpus(Monitor *mon, const QDict *qdict)
+{
+ Error *err = NULL;
+ HotpluggableCPUList *l = qmp_query_hotpluggable_cpus(&err);
+ HotpluggableCPUList *saved = l;
+ CpuInstanceProperties *c;
+
+ if (err != NULL) {
+ hmp_handle_error(mon, &err);
+ return;
+ }
+
+ monitor_printf(mon, "Hotpluggable CPUs:\n");
+ while (l) {
+ monitor_printf(mon, " type: \"%s\"\n", l->value->type);
+ monitor_printf(mon, " vcpus_count: \"%ld\"\n", l->value->vcpus_count);
+ if (l->value->has_qom_path) {
+ monitor_printf(mon, " qom_path: \"%s\"\n", l->value->qom_path);
+ }
+
+ c = l->value->props;
+ monitor_printf(mon, " CPUInstance Properties:\n");
+ if (c->has_node) {
+ monitor_printf(mon, " node: \"%ld\"\n", c->node);
+ }
+ if (c->has_socket) {
+ monitor_printf(mon, " socket: \"%ld\"\n", c->socket);
+ }
+ if (c->has_core) {
+ monitor_printf(mon, " core: \"%ld\"\n", c->core);
+ }
+ if (c->has_thread) {
+ monitor_printf(mon, " thread: \"%ld\"\n", c->thread);
+ }
+
+ l = l->next;
+ }
+
+ qapi_free_HotpluggableCPUList(saved);
+}
diff --git a/hmp.h b/hmp.h
index 093d65f..f5d9749 100644
--- a/hmp.h
+++ b/hmp.h
@@ -132,5 +132,6 @@ void hmp_rocker_ports(Monitor *mon, const QDict *qdict);
void hmp_rocker_of_dpa_flows(Monitor *mon, const QDict *qdict);
void hmp_rocker_of_dpa_groups(Monitor *mon, const QDict *qdict);
void hmp_info_dump(Monitor *mon, const QDict *qdict);
+void hmp_hotpluggable_cpus(Monitor *mon, const QDict *qdict);
#endif
--
2.1.0
- Re: [Qemu-ppc] [for-2.7 PATCH v3 01/15] exec: Remove cpu from cpus list during cpu_exec_exit(), (continued)
- [Qemu-ppc] [for-2.7 PATCH v3 02/15] exec: Do vmstate unregistration from cpu_exec_exit(), Bharata B Rao, 2016/05/11
- [Qemu-ppc] [for-2.7 PATCH v3 13/15] QMP: Add query-hotpluggable-cpus, Bharata B Rao, 2016/05/11
- [Qemu-ppc] [for-2.7 PATCH v3 12/15] spapr: CPU hot unplug support, Bharata B Rao, 2016/05/11
- [Qemu-ppc] [for-2.7 PATCH v3 09/15] spapr: CPU hotplug support, Bharata B Rao, 2016/05/11
- [Qemu-ppc] [for-2.7 PATCH v3 07/15] spapr: Abstract CPU core device and type specific core devices, Bharata B Rao, 2016/05/11
- [Qemu-ppc] [for-2.7 PATCH v3 10/15] xics, xics_kvm: Handle CPU unplug correctly, Bharata B Rao, 2016/05/11
- [Qemu-ppc] [for-2.7 PATCH v3 15/15] spapr: implement query-hotpluggable-cpus callback, Bharata B Rao, 2016/05/12
- [Qemu-ppc] [for-2.7 PATCH v3 06/15] cpu: Abstract CPU core type, Bharata B Rao, 2016/05/12
- [Qemu-ppc] [for-2.7 PATCH v3 14/15] hmp: Add 'info hotpluggable-cpus' HMP command,
Bharata B Rao <=
- Re: [Qemu-ppc] [Qemu-devel] [for-2.7 PATCH v3 00/15] Core based CPU hotplug for PowerPC sPAPR, Thomas Huth, 2016/05/25
- Re: [Qemu-ppc] [for-2.7 PATCH v3 00/15] Core based CPU hotplug for PowerPC sPAPR, David Gibson, 2016/05/26