14.10.2015 18:28, Dmitry Guryanov пишет:
On 10/14/2015 12:50 PM, Maxim Nestratov wrote:
From: Maxim Nestratov <mnestratov@xxxxxxxxxxxxx>
As a connection type we report 'vz'.
And because we have no limitation for maximal number of vcpus in
containers
we report as maximum 1028 just for the sake of common sence.
Signed-off-by: Maxim Nestratov <mnestratov@xxxxxxxxxxxxx>
---
src/vz/vz_driver.c | 19 +++++++++++++++++++
1 files changed, 19 insertions(+), 0 deletions(-)
diff --git a/src/vz/vz_driver.c b/src/vz/vz_driver.c
index 15dc70f..3cd6096 100644
--- a/src/vz/vz_driver.c
+++ b/src/vz/vz_driver.c
@@ -1337,12 +1337,31 @@ vzDomainMemoryStats(virDomainPtr domain,
return ret;
}
+static int vzConnectGetMaxVcpus(virConnectPtr conn ATTRIBUTE_UNUSED,
+ const char *type)
+{
+ /* As far as we have no limitation for containers
+ * we report maximum */
What about VMs?
+ if (type == NULL || STRCASEEQ(type, "vz"))
What about parallels virt type?
+ return 1028;
+
Why not 1024?
The only reason is that this number is used in openVZ driver. I failed
to find out why it was chosen back then. I guess it was NR_CPUS
configured for openVZ kernel.
+ virReportError(VIR_ERR_INVALID_ARG,
+ _("unknown type '%s'"), type);
+ return -1;
+}
+
+static const char *vzConnectGetType(virConnectPtr conn
ATTRIBUTE_UNUSED) {
+ return "vz";
+}
+
Is this function really needed? virConnectGetType returns driver name
if it's not
implemented in the driver, exactly what are you doing.
const char *
virConnectGetType(virConnectPtr conn)
{
const char *ret;
VIR_DEBUG("conn=%p", conn);
virResetLastError();
virCheckConnectReturn(conn, NULL);
if (conn->driver->connectGetType) {
ret = conn->driver->connectGetType(conn);
if (ret) return ret;
}
return conn->driver->name;
}
static virHypervisorDriver vzDriver = {
.name = "vz",
.connectOpen = vzConnectOpen, /* 0.10.0 */
.connectClose = vzConnectClose, /* 0.10.0 */
.connectGetVersion = vzConnectGetVersion, /* 0.10.0 */
.connectGetHostname = vzConnectGetHostname, /* 0.10.0 */
+ .connectGetType = vzConnectGetType, /* 1.2.21 */
+ .connectGetMaxVcpus = vzConnectGetMaxVcpus, /* 1.2.21 */
.nodeGetInfo = vzNodeGetInfo, /* 0.10.0 */
.connectGetCapabilities = vzConnectGetCapabilities, /* 0.10.0 */
.connectBaselineCPU = vzConnectBaselineCPU, /* 1.2.6 */
--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list