e10da2
From dd255d64053e9960cd375994ce8f056522e12acc Mon Sep 17 00:00:00 2001
e10da2
From: Eric Blake <eblake@redhat.com>
e10da2
Date: Mon, 27 Sep 2010 09:18:22 -0600
e10da2
Subject: [PATCH 03/15] vcpu: define internal driver API
e10da2
e10da2
* src/driver.h (virDrvDomainSetVcpusFlags)
e10da2
(virDrvDomainGetVcpusFlags): New typedefs.
e10da2
(_virDriver): New callback members.
e10da2
* src/esx/esx_driver.c (esxDriver): Add stub for driver.
e10da2
* src/lxc/lxc_driver.c (lxcDriver): Likewise.
e10da2
* src/opennebula/one_driver.c (oneDriver): Likewise.
e10da2
* src/openvz/openvz_driver.c (openvzDriver): Likewise.
e10da2
* src/phyp/phyp_driver.c (phypDriver): Likewise.
e10da2
* src/qemu/qemu_driver.c (qemuDriver): Likewise.
e10da2
* src/remote/remote_driver.c (remote_driver): Likewise.
e10da2
* src/test/test_driver.c (testDriver): Likewise.
e10da2
* src/uml/uml_driver.c (umlDriver): Likewise.
e10da2
* src/vbox/vbox_tmpl.c (Driver): Likewise.
e10da2
* src/xen/xen_driver.c (xenUnifiedDriver): Likewise.
e10da2
* src/xenapi/xenapi_driver.c (xenapiDriver): Likewise.
e10da2
---
e10da2
 src/driver.h                |    9 +++++++++
e10da2
 src/esx/esx_driver.c        |    2 ++
e10da2
 src/lxc/lxc_driver.c        |    2 ++
e10da2
 src/opennebula/one_driver.c |    2 ++
e10da2
 src/openvz/openvz_driver.c  |    2 ++
e10da2
 src/phyp/phyp_driver.c      |    2 ++
e10da2
 src/qemu/qemu_driver.c      |    2 ++
e10da2
 src/remote/remote_driver.c  |    2 ++
e10da2
 src/test/test_driver.c      |    2 ++
e10da2
 src/uml/uml_driver.c        |    2 ++
e10da2
 src/vbox/vbox_tmpl.c        |    2 ++
e10da2
 src/xen/xen_driver.c        |    2 ++
e10da2
 src/xenapi/xenapi_driver.c  |    2 ++
e10da2
 13 files changed, 33 insertions(+), 0 deletions(-)
e10da2
e10da2
diff --git a/src/driver.h b/src/driver.h
e10da2
index 32aeb04..79a96c1 100644
e10da2
--- a/src/driver.h
e10da2
+++ b/src/driver.h
e10da2
@@ -185,6 +185,13 @@ typedef int
e10da2
         (*virDrvDomainSetVcpus)		(virDomainPtr domain,
e10da2
                                          unsigned int nvcpus);
e10da2
 typedef int
e10da2
+        (*virDrvDomainSetVcpusFlags)	(virDomainPtr domain,
e10da2
+                                         unsigned int nvcpus,
e10da2
+                                         unsigned int flags);
e10da2
+typedef int
e10da2
+        (*virDrvDomainGetVcpusFlags)	(virDomainPtr domain,
e10da2
+                                         unsigned int flags);
e10da2
+typedef int
e10da2
         (*virDrvDomainPinVcpu)		(virDomainPtr domain,
e10da2
                                          unsigned int vcpu,
e10da2
                                          unsigned char *cpumap,
e10da2
@@ -520,6 +527,8 @@ struct _virDriver {
e10da2
     virDrvDomainRestore		domainRestore;
e10da2
     virDrvDomainCoreDump		domainCoreDump;
e10da2
     virDrvDomainSetVcpus		domainSetVcpus;
e10da2
+    virDrvDomainSetVcpusFlags		domainSetVcpusFlags;
e10da2
+    virDrvDomainGetVcpusFlags		domainGetVcpusFlags;
e10da2
     virDrvDomainPinVcpu		domainPinVcpu;
e10da2
     virDrvDomainGetVcpus		domainGetVcpus;
e10da2
     virDrvDomainGetMaxVcpus		domainGetMaxVcpus;
e10da2
diff --git a/src/esx/esx_driver.c b/src/esx/esx_driver.c
e10da2
index 1b4ee29..2a32374 100644
e10da2
--- a/src/esx/esx_driver.c
e10da2
+++ b/src/esx/esx_driver.c
e10da2
@@ -4160,6 +4160,8 @@ static virDriver esxDriver = {
e10da2
     NULL,                            /* domainRestore */
e10da2
     NULL,                            /* domainCoreDump */
e10da2
     esxDomainSetVcpus,               /* domainSetVcpus */
e10da2
+    NULL,                            /* domainSetVcpusFlags */
e10da2
+    NULL,                            /* domainGetVcpusFlags */
e10da2
     NULL,                            /* domainPinVcpu */
e10da2
     NULL,                            /* domainGetVcpus */
e10da2
     esxDomainGetMaxVcpus,            /* domainGetMaxVcpus */
e10da2
diff --git a/src/lxc/lxc_driver.c b/src/lxc/lxc_driver.c
e10da2
index df814da..7563a8c 100644
e10da2
--- a/src/lxc/lxc_driver.c
e10da2
+++ b/src/lxc/lxc_driver.c
e10da2
@@ -2768,6 +2768,8 @@ static virDriver lxcDriver = {
e10da2
     NULL, /* domainRestore */
e10da2
     NULL, /* domainCoreDump */
e10da2
     NULL, /* domainSetVcpus */
e10da2
+    NULL, /* domainSetVcpusFlags */
e10da2
+    NULL, /* domainGetVcpusFlags */
e10da2
     NULL, /* domainPinVcpu */
e10da2
     NULL, /* domainGetVcpus */
e10da2
     NULL, /* domainGetMaxVcpus */
e10da2
diff --git a/src/opennebula/one_driver.c b/src/opennebula/one_driver.c
e10da2
index ced9a38..199fca3 100644
e10da2
--- a/src/opennebula/one_driver.c
e10da2
+++ b/src/opennebula/one_driver.c
e10da2
@@ -751,6 +751,8 @@ static virDriver oneDriver = {
e10da2
     NULL, /* domainRestore */
e10da2
     NULL, /* domainCoreDump */
e10da2
     NULL, /* domainSetVcpus */
e10da2
+    NULL, /* domainSetVcpusFlags */
e10da2
+    NULL, /* domainGetVcpusFlags */
e10da2
     NULL, /* domainPinVcpu */
e10da2
     NULL, /* domainGetVcpus */
e10da2
     NULL, /* domainGetMaxVcpus */
e10da2
diff --git a/src/openvz/openvz_driver.c b/src/openvz/openvz_driver.c
e10da2
index 92cf4a1..9d19aeb 100644
e10da2
--- a/src/openvz/openvz_driver.c
e10da2
+++ b/src/openvz/openvz_driver.c
e10da2
@@ -1590,6 +1590,8 @@ static virDriver openvzDriver = {
e10da2
     NULL, /* domainRestore */
e10da2
     NULL, /* domainCoreDump */
e10da2
     openvzDomainSetVcpus, /* domainSetVcpus */
e10da2
+    NULL, /* domainSetVcpusFlags */
e10da2
+    NULL, /* domainGetVcpusFlags */
e10da2
     NULL, /* domainPinVcpu */
e10da2
     NULL, /* domainGetVcpus */
e10da2
     openvzDomainGetMaxVcpus, /* domainGetMaxVcpus */
e10da2
diff --git a/src/phyp/phyp_driver.c b/src/phyp/phyp_driver.c
e10da2
index e63d8d9..6e0a5e9 100644
e10da2
--- a/src/phyp/phyp_driver.c
e10da2
+++ b/src/phyp/phyp_driver.c
e10da2
@@ -3941,6 +3941,8 @@ static virDriver phypDriver = {
e10da2
     NULL,                       /* domainRestore */
e10da2
     NULL,                       /* domainCoreDump */
e10da2
     phypDomainSetCPU,           /* domainSetVcpus */
e10da2
+    NULL,                       /* domainSetVcpusFlags */
e10da2
+    NULL,                       /* domainGetVcpusFlags */
e10da2
     NULL,                       /* domainPinVcpu */
e10da2
     NULL,                       /* domainGetVcpus */
e10da2
     phypGetLparCPUMAX,          /* domainGetMaxVcpus */
e10da2
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
e10da2
index abd8e9d..3d17e04 100644
e10da2
--- a/src/qemu/qemu_driver.c
e10da2
+++ b/src/qemu/qemu_driver.c
e10da2
@@ -12938,6 +12938,8 @@ static virDriver qemuDriver = {
e10da2
     qemudDomainRestore, /* domainRestore */
e10da2
     qemudDomainCoreDump, /* domainCoreDump */
e10da2
     qemudDomainSetVcpus, /* domainSetVcpus */
e10da2
+    NULL, /* domainSetVcpusFlags */
e10da2
+    NULL, /* domainGetVcpusFlags */
e10da2
     qemudDomainPinVcpu, /* domainPinVcpu */
e10da2
     qemudDomainGetVcpus, /* domainGetVcpus */
e10da2
     qemudDomainGetMaxVcpus, /* domainGetMaxVcpus */
e10da2
diff --git a/src/remote/remote_driver.c b/src/remote/remote_driver.c
e10da2
index 0b10406..1a687ad 100644
e10da2
--- a/src/remote/remote_driver.c
e10da2
+++ b/src/remote/remote_driver.c
e10da2
@@ -10468,6 +10468,8 @@ static virDriver remote_driver = {
e10da2
     remoteDomainRestore, /* domainRestore */
e10da2
     remoteDomainCoreDump, /* domainCoreDump */
e10da2
     remoteDomainSetVcpus, /* domainSetVcpus */
e10da2
+    NULL, /* domainSetVcpusFlags */
e10da2
+    NULL, /* domainGetVcpusFlags */
e10da2
     remoteDomainPinVcpu, /* domainPinVcpu */
e10da2
     remoteDomainGetVcpus, /* domainGetVcpus */
e10da2
     remoteDomainGetMaxVcpus, /* domainGetMaxVcpus */
e10da2
diff --git a/src/test/test_driver.c b/src/test/test_driver.c
e10da2
index 7d4d119..6a00558 100644
e10da2
--- a/src/test/test_driver.c
e10da2
+++ b/src/test/test_driver.c
e10da2
@@ -5260,6 +5260,8 @@ static virDriver testDriver = {
e10da2
     testDomainRestore, /* domainRestore */
e10da2
     testDomainCoreDump, /* domainCoreDump */
e10da2
     testSetVcpus, /* domainSetVcpus */
e10da2
+    NULL, /* domainSetVcpusFlags */
e10da2
+    NULL, /* domainGetVcpusFlags */
e10da2
     testDomainPinVcpu, /* domainPinVcpu */
e10da2
     testDomainGetVcpus, /* domainGetVcpus */
e10da2
     testDomainGetMaxVcpus, /* domainGetMaxVcpus */
e10da2
diff --git a/src/uml/uml_driver.c b/src/uml/uml_driver.c
e10da2
index 3dcd321..5161012 100644
e10da2
--- a/src/uml/uml_driver.c
e10da2
+++ b/src/uml/uml_driver.c
e10da2
@@ -2129,6 +2129,8 @@ static virDriver umlDriver = {
e10da2
     NULL, /* domainRestore */
e10da2
     NULL, /* domainCoreDump */
e10da2
     NULL, /* domainSetVcpus */
e10da2
+    NULL, /* domainSetVcpusFlags */
e10da2
+    NULL, /* domainGetVcpusFlags */
e10da2
     NULL, /* domainPinVcpu */
e10da2
     NULL, /* domainGetVcpus */
e10da2
     NULL, /* domainGetMaxVcpus */
e10da2
diff --git a/src/vbox/vbox_tmpl.c b/src/vbox/vbox_tmpl.c
e10da2
index 7e7d8e4..cb9193a 100644
e10da2
--- a/src/vbox/vbox_tmpl.c
e10da2
+++ b/src/vbox/vbox_tmpl.c
e10da2
@@ -8267,6 +8267,8 @@ virDriver NAME(Driver) = {
e10da2
     NULL, /* domainRestore */
e10da2
     NULL, /* domainCoreDump */
e10da2
     vboxDomainSetVcpus, /* domainSetVcpus */
e10da2
+    NULL, /* domainSetVcpusFlags */
e10da2
+    NULL, /* domainGetVcpusFlags */
e10da2
     NULL, /* domainPinVcpu */
e10da2
     NULL, /* domainGetVcpus */
e10da2
     vboxDomainGetMaxVcpus, /* domainGetMaxVcpus */
e10da2
diff --git a/src/xen/xen_driver.c b/src/xen/xen_driver.c
e10da2
index c2a4de3..7d67ced 100644
e10da2
--- a/src/xen/xen_driver.c
e10da2
+++ b/src/xen/xen_driver.c
e10da2
@@ -1951,6 +1951,8 @@ static virDriver xenUnifiedDriver = {
e10da2
     xenUnifiedDomainRestore, /* domainRestore */
e10da2
     xenUnifiedDomainCoreDump, /* domainCoreDump */
e10da2
     xenUnifiedDomainSetVcpus, /* domainSetVcpus */
e10da2
+    NULL, /* domainSetVcpusFlags */
e10da2
+    NULL, /* domainGetVcpusFlags */
e10da2
     xenUnifiedDomainPinVcpu, /* domainPinVcpu */
e10da2
     xenUnifiedDomainGetVcpus, /* domainGetVcpus */
e10da2
     xenUnifiedDomainGetMaxVcpus, /* domainGetMaxVcpus */
e10da2
diff --git a/src/xenapi/xenapi_driver.c b/src/xenapi/xenapi_driver.c
e10da2
index e62a139..753169c 100644
e10da2
--- a/src/xenapi/xenapi_driver.c
e10da2
+++ b/src/xenapi/xenapi_driver.c
e10da2
@@ -1754,6 +1754,8 @@ static virDriver xenapiDriver = {
e10da2
     NULL, /* domainRestore */
e10da2
     NULL, /* domainCoreDump */
e10da2
     xenapiDomainSetVcpus, /* domainSetVcpus */
e10da2
+    NULL, /* domainSetVcpusFlags */
e10da2
+    NULL, /* domainGetVcpusFlags */
e10da2
     xenapiDomainPinVcpu, /* domainPinVcpu */
e10da2
     xenapiDomainGetVcpus, /* domainGetVcpus */
e10da2
     xenapiDomainGetMaxVcpus, /* domainGetMaxVcpus */
e10da2
-- 
e10da2
1.7.2.3
e10da2