This patch implements the remote protocol to address the new API
(virDomainPinVcpuFlags).
Signed-off-by: Taku Izumi <izumi.taku(a)jp.fujitsu.com>
---
src/remote/remote_driver.c | 2 +-
src/remote/remote_protocol.x | 10 +++++++++-
src/remote_protocol-structs | 9 +++++++++
3 files changed, 19 insertions(+), 2 deletions(-)
Index: libvirt/src/remote/remote_driver.c
===================================================================
--- libvirt.orig/src/remote/remote_driver.c
+++ libvirt/src/remote/remote_driver.c
@@ -6424,7 +6424,7 @@ static virDriver remote_driver = {
remoteDomainSetVcpusFlags, /* domainSetVcpusFlags */
remoteDomainGetVcpusFlags, /* domainGetVcpusFlags */
remoteDomainPinVcpu, /* domainPinVcpu */
- NULL, /* domainPinVcpuFlags */
+ remoteDomainPinVcpuFlags, /* domainPinVcpuFlags */
remoteDomainGetVcpus, /* domainGetVcpus */
remoteDomainGetMaxVcpus, /* domainGetMaxVcpus */
remoteDomainGetSecurityLabel, /* domainGetSecurityLabel */
Index: libvirt/src/remote/remote_protocol.x
===================================================================
--- libvirt.orig/src/remote/remote_protocol.x
+++ libvirt/src/remote/remote_protocol.x
@@ -843,6 +843,13 @@ struct remote_domain_pin_vcpu_args {
opaque cpumap<REMOTE_CPUMAP_MAX>;
};
+struct remote_domain_pin_vcpu_flags_args {
+ remote_nonnull_domain dom;
+ int vcpu;
+ opaque cpumap<REMOTE_CPUMAP_MAX>;
+ unsigned int flags;
+};
+
struct remote_domain_get_vcpus_args {
remote_nonnull_domain dom;
int maxinfo;
@@ -2176,7 +2183,8 @@ enum remote_procedure {
REMOTE_PROC_DOMAIN_GET_BLKIO_PARAMETERS = 206,
REMOTE_PROC_DOMAIN_MIGRATE_SET_MAX_SPEED = 207,
REMOTE_PROC_STORAGE_VOL_UPLOAD = 208,
- REMOTE_PROC_STORAGE_VOL_DOWNLOAD = 209
+ REMOTE_PROC_STORAGE_VOL_DOWNLOAD = 209,
+ REMOTE_PROC_DOMAIN_PIN_VCPU_FLAGS = 210
/*
* Notice how the entries are grouped in sets of 10 ?
Index: libvirt/src/remote_protocol-structs
===================================================================
--- libvirt.orig/src/remote_protocol-structs
+++ libvirt/src/remote_protocol-structs
@@ -528,6 +528,15 @@ struct remote_domain_pin_vcpu_args {
char * cpumap_val;
} cpumap;
};
+struct remote_domain_pin_vcpu_flags_args {
+ remote_nonnull_domain dom;
+ int vcpu;
+ struct {
+ u_int cpumap_len;
+ char * cpumap_val;
+ } cpumap;
+ u_int flags;
+};
struct remote_domain_get_vcpus_args {
remote_nonnull_domain dom;
int maxinfo;