]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
remote: Implement the plumbing for virDomainPinIOThread
authorJohn Ferlan <jferlan@redhat.com>
Thu, 5 Mar 2015 19:28:39 +0000 (14:28 -0500)
committerJohn Ferlan <jferlan@redhat.com>
Wed, 11 Mar 2015 16:23:33 +0000 (12:23 -0400)
Implement the remote plumbing.

src/remote/remote_driver.c
src/remote/remote_protocol.x
src/remote_protocol-structs
src/rpc/gendispatch.pl

index 42dab9d3e5d4388ff1beba394f792c1c4e857812..6035631f6a3126b143f9fc58c10f60a991e7537a 100644 (file)
@@ -8106,6 +8106,7 @@ static virHypervisorDriver hypervisor_driver = {
     .domainGetVcpus = remoteDomainGetVcpus, /* 0.3.0 */
     .domainGetMaxVcpus = remoteDomainGetMaxVcpus, /* 0.3.0 */
     .domainGetIOThreadsInfo = remoteDomainGetIOThreadsInfo, /* 1.2.14 */
+    .domainPinIOThread = remoteDomainPinIOThread, /* 1.2.14 */
     .domainGetSecurityLabel = remoteDomainGetSecurityLabel, /* 0.6.1 */
     .domainGetSecurityLabelList = remoteDomainGetSecurityLabelList, /* 0.10.0 */
     .nodeGetSecurityModel = remoteNodeGetSecurityModel, /* 0.6.1 */
index 4ea535e6d65b443d8db62dbeec43ffde7aafb51d..6beaa6e5ad324bb0eac01ba1ddd355440ab338ff 100644 (file)
@@ -1199,6 +1199,13 @@ struct remote_domain_get_iothreads_info_ret {
     unsigned int ret;
 };
 
+struct remote_domain_pin_iothread_args {
+    remote_nonnull_domain dom;
+    unsigned int iothreads_id;
+    opaque cpumap<REMOTE_CPUMAP_MAX>; /* (unsigned char *) */
+    unsigned int flags;
+};
+
 struct remote_domain_get_security_label_args {
     remote_nonnull_domain dom;
 };
@@ -5593,5 +5600,13 @@ enum remote_procedure {
      * @generate: none
      * @acl: domain:read
      */
-    REMOTE_PROC_DOMAIN_GET_IOTHREADS_INFO = 351
+    REMOTE_PROC_DOMAIN_GET_IOTHREADS_INFO = 351,
+
+    /**
+     * @generate: both
+     * @acl: domain:write
+     * @acl: domain:save:!VIR_DOMAIN_AFFECT_CONFIG|VIR_DOMAIN_AFFECT_LIVE
+     * @acl: domain:save:VIR_DOMAIN_AFFECT_CONFIG
+     */
+    REMOTE_PROC_DOMAIN_PIN_IOTHREAD = 352
 };
index 907bcd458254abfbf2f6d21cb6d731a339eda9d1..3d553042b8b5fd053a54f8d889f1636ef3e9d122 100644 (file)
@@ -825,6 +825,15 @@ struct remote_domain_get_iothreads_info_ret {
         } info;
         u_int                      ret;
 };
+struct remote_domain_pin_iothread_args {
+        remote_nonnull_domain      dom;
+        u_int                      iothreads_id;
+        struct {
+                u_int              cpumap_len;
+                char *             cpumap_val;
+        } cpumap;
+        u_int                      flags;
+};
 struct remote_domain_get_security_label_args {
         remote_nonnull_domain      dom;
 };
@@ -2982,4 +2991,5 @@ enum remote_procedure {
         REMOTE_PROC_DOMAIN_GET_FSINFO = 349,
         REMOTE_PROC_DOMAIN_DEFINE_XML_FLAGS = 350,
         REMOTE_PROC_DOMAIN_GET_IOTHREADS_INFO = 351,
+        REMOTE_PROC_DOMAIN_PIN_IOTHREAD = 352,
 };
index 78cb415eb665e88cc90b6391663e8d3c3e7206f6..8b488ebca8e150324ab4394754a3610afdb41eca 100755 (executable)
@@ -68,6 +68,7 @@ sub fixup_name {
     $name =~ s/Fsthaw$/FSThaw/;
     $name =~ s/Fsinfo$/FSInfo/;
     $name =~ s/Iothreads$/IOThreads/;
+    $name =~ s/Iothread$/IOThread/;
     $name =~ s/Scsi/SCSI/;
     $name =~ s/Wwn$/WWN/;
     $name =~ s/Dhcp$/DHCP/;