aboutsummaryrefslogtreecommitdiffstats
path: root/tools/libxl/libxl_qmp.c
diff options
context:
space:
mode:
authorAnthony PERARD <anthony.perard@citrix.com>2013-06-26 16:54:30 +0100
committerIan Campbell <ian.campbell@citrix.com>2013-06-26 17:46:49 +0100
commit3275031240b372d0f8c97f9662dec6b54e78c594 (patch)
tree26d1553ac9489a83a0b9e6d585cdcd188784a0f2 /tools/libxl/libxl_qmp.c
parent401e18fd9b5f226e1e35eec369a4e0db0f2248fc (diff)
downloadxen-3275031240b372d0f8c97f9662dec6b54e78c594.tar.gz
xen-3275031240b372d0f8c97f9662dec6b54e78c594.tar.bz2
xen-3275031240b372d0f8c97f9662dec6b54e78c594.zip
libxl: Add "cpu-add" QMP command.
Signed-off-by: Anthony PERARD <anthony.perard@citrix.com> Acked-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: George Dunlap <george.dunlap@eu.citrix.com> [ ijc -- rename index parameter to avoid Wshadow due to index(3) in strings.h ]
Diffstat (limited to 'tools/libxl/libxl_qmp.c')
-rw-r--r--tools/libxl/libxl_qmp.c21
1 files changed, 21 insertions, 0 deletions
diff --git a/tools/libxl/libxl_qmp.c b/tools/libxl/libxl_qmp.c
index 644d2c0041..f681f3a4c6 100644
--- a/tools/libxl/libxl_qmp.c
+++ b/tools/libxl/libxl_qmp.c
@@ -668,6 +668,18 @@ static void qmp_parameters_add_bool(libxl__gc *gc,
qmp_parameters_common_add(gc, param, name, obj);
}
+static void qmp_parameters_add_integer(libxl__gc *gc,
+ libxl__json_object **param,
+ const char *name, const int i)
+{
+ libxl__json_object *obj;
+
+ obj = libxl__json_object_alloc(gc, JSON_INTEGER);
+ obj->u.i = i;
+
+ qmp_parameters_common_add(gc, param, name, obj);
+}
+
#define QMP_PARAMETERS_SPRINTF(args, name, format, ...) \
qmp_parameters_add_string(gc, args, name, \
libxl__sprintf(gc, format, __VA_ARGS__))
@@ -929,6 +941,15 @@ int libxl__qmp_insert_cdrom(libxl__gc *gc, int domid,
}
}
+int libxl__qmp_cpu_add(libxl__gc *gc, int domid, int idx)
+{
+ libxl__json_object *args = NULL;
+
+ qmp_parameters_add_integer(gc, &args, "id", idx);
+
+ return qmp_run_command(gc, domid, "cpu-add", args, NULL, NULL);
+}
+
int libxl__qmp_initializations(libxl__gc *gc, uint32_t domid,
const libxl_domain_config *guest_config)
{