[libvirt] [PATCH] typo: fix typo error in virLXCControllerSetupResourceLimits
by zhang bo
iff -> if
rather then -> rather than
Signed-off-by: YueWenyuan <yuewenyuan(a)huawei.com>
---
src/lxc/lxc_controller.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/lxc/lxc_controller.c b/src/lxc/lxc_controller.c
index e144c2d..7ad9d50 100644
--- a/src/lxc/lxc_controller.c
+++ b/src/lxc/lxc_controller.c
@@ -745,9 +745,9 @@ static int virLXCControllerSetupResourceLimits(virLXCControllerPtr ctrl)
if (mode == VIR_DOMAIN_NUMATUNE_MEM_STRICT &&
virCgroupControllerAvailable(VIR_CGROUP_CONTROLLER_CPUSET)) {
- /* Use virNuma* API iff necessary. Once set and child is exec()-ed,
+ /* Use virNuma* API if necessary. Once set and child is exec()-ed,
* there's no way for us to change it. Rely on cgroups (if available
- * and enabled in the config) rather then virNuma*. */
+ * and enabled in the config) rather than virNuma*. */
VIR_DEBUG("Relying on CGroups for memory binding");
} else {
--
1.7.12.4
9 years, 7 months
[libvirt] [PATCH 0/5] qemu: Connect to guest agent after channel hotplug
by Peter Krempa
Clean up some parts of the agent code, fix a recently added bug and add support
for guest agent hotplug, all this while removing more lines than adding.
Peter Krempa (5):
qemu: agent: Reuse virJSONValueObjectCreateVArgs in
qemuAgentMakeCommand
qemu: Fix domain object leak in qemuDomainInterfaceAddresses
qemu: Reuse qemuDomainAgentAvailable in qemuDomainInterfaceAddresses
qemu: agent: Differentiate errors when the agent channel was
hotplugged
qemu: Connect to guest agent after channel hotplug
src/qemu/qemu_agent.c | 73 ++-----------------------------------------------
src/qemu/qemu_domain.c | 45 +++++++++++++++++++++++++++---
src/qemu/qemu_domain.h | 2 ++
src/qemu/qemu_driver.c | 56 +++++++++++++++++++++----------------
src/qemu/qemu_process.c | 22 +--------------
src/qemu/qemu_process.h | 2 ++
6 files changed, 81 insertions(+), 119 deletions(-)
--
2.3.5
9 years, 7 months
[libvirt] [PATCH] libxl: remove duplicate check for pci subsystem type
by Olaf Hering
Both attach and detach functions get called only if the type matches.
Signed-off-by: Olaf Hering <olaf(a)aepfle.de>
Cc: Jim Fehlig <jfehlig(a)suse.com>
---
src/libxl/libxl_driver.c | 6 ------
1 file changed, 6 deletions(-)
diff --git a/src/libxl/libxl_driver.c b/src/libxl/libxl_driver.c
index d76efda..f915f91 100644
--- a/src/libxl/libxl_driver.c
+++ b/src/libxl/libxl_driver.c
@@ -2901,9 +2901,6 @@ libxlDomainAttachHostPCIDevice(libxlDriverPrivatePtr driver,
libxl_device_pci_init(&pcidev);
- if (hostdev->source.subsys.type != VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI)
- goto cleanup;
-
if (virDomainHostdevFind(vm->def, hostdev, &found) >= 0) {
virReportError(VIR_ERR_OPERATION_FAILED,
_("target pci device %.4x:%.2x:%.2x.%.1x already exists"),
@@ -3239,9 +3236,6 @@ libxlDomainDetachHostPCIDevice(libxlDriverPrivatePtr driver,
libxl_device_pci_init(&pcidev);
- if (subsys->type != VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI)
- goto cleanup;
-
idx = virDomainHostdevFind(vm->def, hostdev, &detach);
if (idx < 0) {
virReportError(VIR_ERR_OPERATION_FAILED,
9 years, 7 months
[libvirt] [PATCH] libxl: use pci init and dispose functions
by Olaf Hering
Rearrange code so that the local variable is always initialized and
disposed.
Signed-off-by: Olaf Hering <olaf(a)aepfle.de>
Cc: Jim Fehlig <jfehlig(a)suse.com>
---
src/libxl/libxl_driver.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)
diff --git a/src/libxl/libxl_driver.c b/src/libxl/libxl_driver.c
index 393f8bd..d76efda 100644
--- a/src/libxl/libxl_driver.c
+++ b/src/libxl/libxl_driver.c
@@ -2893,12 +2893,14 @@ libxlDomainAttachHostPCIDevice(libxlDriverPrivatePtr driver,
virDomainHostdevDefPtr hostdev)
{
libxlDriverConfigPtr cfg = libxlDriverConfigGet(driver);
- libxl_device_pci pcidev;
+ libxl_device_pci pcidev;
virDomainHostdevDefPtr found;
virHostdevManagerPtr hostdev_mgr = driver->hostdevMgr;
virDomainHostdevSubsysPCIPtr pcisrc = &hostdev->source.subsys.u.pci;
int ret = -1;
+ libxl_device_pci_init(&pcidev);
+
if (hostdev->source.subsys.type != VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI)
goto cleanup;
@@ -2939,6 +2941,7 @@ libxlDomainAttachHostPCIDevice(libxlDriverPrivatePtr driver,
cleanup:
virObjectUnref(cfg);
+ libxl_device_pci_dispose(&pcidev);
return ret;
}
@@ -3234,6 +3237,8 @@ libxlDomainDetachHostPCIDevice(libxlDriverPrivatePtr driver,
virHostdevManagerPtr hostdev_mgr = driver->hostdevMgr;
int ret = -1;
+ libxl_device_pci_init(&pcidev);
+
if (subsys->type != VIR_DOMAIN_HOSTDEV_SUBSYS_TYPE_PCI)
goto cleanup;
@@ -3255,8 +3260,6 @@ libxlDomainDetachHostPCIDevice(libxlDriverPrivatePtr driver,
}
- libxl_device_pci_init(&pcidev);
-
if (libxlMakePCI(detach, &pcidev) < 0)
goto error;
@@ -3269,7 +3272,6 @@ libxlDomainDetachHostPCIDevice(libxlDriverPrivatePtr driver,
goto error;
}
- libxl_device_pci_dispose(&pcidev);
virDomainHostdevRemove(vm->def, idx);
@@ -3283,6 +3285,7 @@ libxlDomainDetachHostPCIDevice(libxlDriverPrivatePtr driver,
cleanup:
virObjectUnref(cfg);
+ libxl_device_pci_dispose(&pcidev);
return ret;
}
9 years, 7 months
[libvirt] [PATCH] libxl: initialize sdl.opengl defbool in libxlMakeVfb
by Jim Fehlig
Commit bf32462b missed initializing sdl.opengl. Without the
initialization, libvirtd will be terminated by an assert from libxl:
Assertion `!libxl_defbool_is_default(db)' failed.
Reported-by: Olaf Hering <olaf(a)aepfle.de>
Signed-off-by: Jim Fehlig <jfehlig(a)suse.com>
---
Perhaps bending the "trivial rule" a bit, but this patch is trivial
and should have been included in bf32462b. I simply forgot to
add initialization of sdl.opengl before pushing bf32462b. I'll push
this fix shortly.
src/libxl/libxl_conf.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/libxl/libxl_conf.c b/src/libxl/libxl_conf.c
index 55bd21b..53f327b 100644
--- a/src/libxl/libxl_conf.c
+++ b/src/libxl/libxl_conf.c
@@ -1243,6 +1243,7 @@ libxlMakeVfb(virPortAllocatorPtr graphicsports,
case VIR_DOMAIN_GRAPHICS_TYPE_SDL:
libxl_defbool_set(&x_vfb->sdl.enable, 1);
libxl_defbool_set(&x_vfb->vnc.enable, 0);
+ libxl_defbool_set(&x_vfb->sdl.opengl, 0);
if (VIR_STRDUP(x_vfb->sdl.display, l_vfb->data.sdl.display) < 0)
return -1;
if (VIR_STRDUP(x_vfb->sdl.xauthority, l_vfb->data.sdl.xauth) < 0)
--
1.8.4.5
9 years, 7 months
[libvirt] CfP Virtualization in High-Performance Cloud Computing Workshop (VHPC '15)
by VHPC 15
=================================================================
CALL FOR PAPERS
10th Workshop on Virtualization in High-Performance Cloud Computing (VHPC
'15)
held in conjunction with Euro-Par 2015, August 24-28, Vienna, Austria
(Springer LNCS)
=================================================================
Date: August 25, 2015
Workshop URL: http://vhpc.org
Paper Submission Deadline: May 22, 2015
CALL FOR PAPERS
Virtualization technologies constitute a key enabling factor for flexible
resource
management in modern data centers, cloud environments, and increasingly in
HPC as well. Providers need to dynamically manage complex infrastructures
in a
seamless fashion for varying workloads and hosted applications,
independently of
the customers deploying software or users submitting highly dynamic and
heterogeneous workloads. Thanks to virtualization, we have the ability to
manage
vast computing and networking resources dynamically and close to the
marginal
cost of providing the services, which is unprecedented in the history of
scientific
and commercial computing.
Docker et al. OS-level virtualization, with its capability to isolate
multiple user-space
environments allows for their co-existence within the same OS kernel. It
promises to provide many of the advantages of machine virtualization with
high
levels of responsiveness and performance; coupled with lightweight OSs it
forms a
potent architecture with promise to become a mainstream environment
for HPC workloads.
Machine virtualization, with its capability to enable consolidation of
multiple
under-utilized servers with heterogeneous software and operating systems
(OSes),
and its capability to live-migrate a fully operating virtual machine (VM)
with a very
short downtime, enables novel and dynamic ways to manage physical servers;
I/O Virtualization allows physical network adapters to take traffic from
multiple VMs;
network virtualization, with its capability to create logical network
overlays that
are independent of the underlying physical topology and IP addressing,
provides
the fundamental ground on top of which evolved network services can be
realized
with an unprecedented level of dynamicity and flexibility; These
technologies
have to be inter-mixed and integrated in an intelligent way, to support
workloads that are increasingly demanding in terms of absolute performance,
responsiveness and interactivity, and have to respect well-specified
Service-
Level Agreements (SLAs), as needed for industrial-grade provided services.
The Workshop on Virtualization in High-Performance Cloud Computing (VHPC)
aims to bring together researchers and industrial practitioners facing the
challenges
posed by virtualization in order to foster discussion, collaboration,
mutual exchange
of knowledge and experience, enabling research to ultimately provide novel
solutions for virtualized computing systems of tomorrow.
The workshop will be one day in length, composed of 20 min paper
presentations,
each followed by 10 min discussion sections, and lightning talks, limited
to 5
minutes. Presentations may be accompanied by interactive demonstrations.
TOPICS
Topics of interest include, but are not limited to:
- Virtualization in supercomputing environments, HPC clusters, cloud HPC
and grids
- OS-level virtualization including container runtimes (Docker, rkt et al.)
- Lightweight compute node operating systems/VMMs
- Optimizations of virtual machine monitor platforms, hypervisors and
- Hypervisor and network virtualization QoS and SLAs
- Cloud based network and system management for SDN and NFV
- Management, deployment and monitoring of virtualized environments
- Performance measurement, modelling and monitoring of virtualized/cloud
workloads
- Programming models for virtualized environments
- Cloud reliability, fault-tolerance, high-availability and security
- Heterogeneous virtualized environments, virtualized accelerators, GPUs
and co-processors
- Optimized communication libraries/protocols in the cloud and for HPC in
the cloud
- Topology management and optimization for distributed virtualized
applications
- Cluster provisioning in the cloud and cloud bursting
- Adaptation of emerging HPC technologies (high performance networks, RDMA,
etc..)
- I/O and storage virtualization, virtualization aware file systems
- Job scheduling/control/policy in virtualized environments
- Checkpointing and migration of VM-based large compute jobs
- Cloud frameworks and APIs
- Energy-efficient / power-aware virtualization
Important Dates
April 29, 2015 - Abstract registration
May 22, 2015 - Full paper submission
June 19, 2015 - Acceptance notification
October 2, 2015 - Camera-ready version due
August 25, 2015 - Workshop Date
TPC
CHAIR
Michael Alexander (chair), TU Wien, Austria
Anastassios Nanos (co-chair), NTUA, Greece
Balazs Gerofi (co-chair), RIKEN Advanced Institute for Computational
Science, Japan
PROGRAM COMMITTEE
Stergios Anastasiadis, University of Ioannina, Greece
Costas Bekas, IBM Zurich Research Laboratory, Switzerland
Jakob Blomer, CERN
Ron Brightwell, Sandia National Laboratories, USA
Roberto Canonico, University of Napoli Federico II, Italy
Julian Chesterfield, OnApp, UK
Patrick Dreher, MIT, USA
William Gardner, University of Guelph, Canada
Kyle Hale, Northwestern University, USA
Marcus Hardt, Karlsruhe Institute of Technology, Germany
Iftekhar Hussain, Infinera, USA
Krishna Kant, Temple University, USA
Eiji Kawai, National Institute of Information and Communications
Technology, Japan
Romeo Kinzler, IBM, Switzerland
Kornilios Kourtis, ETH, Switzerland
Nectarios Koziris, National Technical University of Athens, Greece
Massimo Lamanna, CERN
Che-Rung Roger Lee, National Tsing Hua University, Taiwan
William Magato, University of Cincinnati, USA
Helge Meinhard, CERN
Jean-Marc Menaud, Ecole des Mines de Nantes France
Christine Morin, INRIA, France
Amer Qouneh, University of Florida, USA
Seetharami Seelam, IBM Watson Research Center, USA
Josh Simons, VMWare, USA
Borja Sotomayor, University of Chicago, USA
Kurt Tutschku, Blekinge Institute of Technology, Sweden
Yasuhiro Watashiba, Osaka University, Japan
Chao-Tung Yang, Tunghai University, Taiwan
PAPER SUBMISSION-PUBLICATION
Papers submitted to the workshop will be reviewed by at least two
members of the program committee and external reviewers. Submissions
should include abstract, key words, the e-mail address of the
corresponding author, and must not exceed 10 pages, including tables
and figures at a main font size no smaller than 11 point. Submission
of a paper should be regarded as a commitment that, should the paper
be accepted, at least one of the authors will register and attend the
conference to present the work.
Accepted papers will be published in the Springer LNCS series - the
format must be according to the Springer LNCS Style. Initial
submissions are in PDF; authors of accepted papers will be requested
to provide source files.
Format Guidelines:
http://www.springer.de/comp/lncs/authors.html
Submission Link:
https://easychair.org/conferences/?conf=europar2015ws
GENERAL INFORMATION
The workshop is one day in length and will be held in conjunction with
Euro-Par 2015, 24-28 August, Vienna, Austria
9 years, 7 months
[libvirt] [PATCH v2] parallels: fix crash in prlsdkAddNet in case of CT definition
by Maxim Nestratov
Since net->model is not defined for containers we shouldn't touch it.
In case network adapter model is defined, a warning about ignoring
it is shown.
Signed-off-by: Maxim Nestratov <mnestratov(a)parallels.com>
---
src/parallels/parallels_sdk.c | 29 ++++++++++++++++++-----------
1 files changed, 18 insertions(+), 11 deletions(-)
diff --git a/src/parallels/parallels_sdk.c b/src/parallels/parallels_sdk.c
index d54f894..c67044c 100644
--- a/src/parallels/parallels_sdk.c
+++ b/src/parallels/parallels_sdk.c
@@ -2725,7 +2725,8 @@ static const char * prlsdkFormatMac(virMacAddrPtr mac, char *macstr)
static int prlsdkAddNet(PRL_HANDLE sdkdom,
parallelsConnPtr privconn,
- virDomainNetDefPtr net)
+ virDomainNetDefPtr net,
+ bool isCt)
{
PRL_RESULT pret;
PRL_HANDLE sdknet = PRL_INVALID_HANDLE;
@@ -2757,19 +2758,25 @@ static int prlsdkAddNet(PRL_HANDLE sdkdom,
pret = PrlVmDevNet_SetMacAddress(sdknet, macstr);
prlsdkCheckRetGoto(pret, cleanup);
- if (STREQ(net->model, "rtl8139")) {
- pret = PrlVmDevNet_SetAdapterType(sdknet, PNT_RTL);
- } else if (STREQ(net->model, "e1000")) {
- pret = PrlVmDevNet_SetAdapterType(sdknet, PNT_E1000);
- } else if (STREQ(net->model, "virtio")) {
- pret = PrlVmDevNet_SetAdapterType(sdknet, PNT_VIRTIO);
+ if (isCt) {
+ if (net->model)
+ VIR_WARN("Setting network adapter for containers is not "
+ "supported by Parallels Cloud Server.");
} else {
- virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
+ if (STREQ(net->model, "rtl8139")) {
+ pret = PrlVmDevNet_SetAdapterType(sdknet, PNT_RTL);
+ } else if (STREQ(net->model, "e1000")) {
+ pret = PrlVmDevNet_SetAdapterType(sdknet, PNT_E1000);
+ } else if (STREQ(net->model, "virtio")) {
+ pret = PrlVmDevNet_SetAdapterType(sdknet, PNT_VIRTIO);
+ } else {
+ virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
_("Specified network adapter model is not "
"supported by Parallels Cloud Server."));
- goto cleanup;
+ goto cleanup;
+ }
+ prlsdkCheckRetGoto(pret, cleanup);
}
- prlsdkCheckRetGoto(pret, cleanup);
if (net->type == VIR_DOMAIN_NET_TYPE_NETWORK) {
if (STREQ(net->data.network.name, PARALLELS_DOMAIN_ROUTED_NETWORK_NAME)) {
@@ -3153,7 +3160,7 @@ prlsdkDoApplyConfig(virConnectPtr conn,
}
for (i = 0; i < def->nnets; i++) {
- if (prlsdkAddNet(sdkdom, conn->privateData, def->nets[i]) < 0)
+ if (prlsdkAddNet(sdkdom, conn->privateData, def->nets[i], IS_CT(def)) < 0)
goto error;
}
--
1.7.1
9 years, 7 months
[libvirt] [PATCH v2] parallels: implement .domainGetMaxMemory
by Dmitry Guryanov
Since we haven't implemented balloon parameters tuning
we can just return amount of memory in this function.
Signed-off-by: Dmitry Guryanov <dguryanov(a)parallels.com>
---
src/parallels/parallels_driver.c | 15 +++++++++++++++
1 file changed, 15 insertions(+)
Changes in v2:
use parallelsDomObjFromDomain function
diff --git a/src/parallels/parallels_driver.c b/src/parallels/parallels_driver.c
index 07f1311..c791b5b 100644
--- a/src/parallels/parallels_driver.c
+++ b/src/parallels/parallels_driver.c
@@ -1098,6 +1098,20 @@ static int parallelsDomainAttachDevice(virDomainPtr dom, const char *xml)
VIR_DOMAIN_AFFECT_CONFIG | VIR_DOMAIN_AFFECT_LIVE);
}
+static unsigned long long
+parallelsDomainGetMaxMemory(virDomainPtr domain)
+{
+ virDomainObjPtr dom = NULL;
+ int ret = -1;
+
+ if (!(dom = parallelsDomObjFromDomain(domain)))
+ return -1;
+
+ ret = dom->def->mem.max_balloon;
+ virObjectUnlock(dom);
+ return ret;
+}
+
static virHypervisorDriver parallelsDriver = {
.name = "Parallels",
.connectOpen = parallelsConnectOpen, /* 0.10.0 */
@@ -1144,6 +1158,7 @@ static virHypervisorDriver parallelsDriver = {
.domainHasManagedSaveImage = parallelsDomainHasManagedSaveImage, /* 1.2.13 */
.domainManagedSave = parallelsDomainManagedSave, /* 1.2.14 */
.domainManagedSaveRemove = parallelsDomainManagedSaveRemove, /* 1.2.14 */
+ .domainGetMaxMemory = parallelsDomainGetMaxMemory, /* 1.2.15 */
};
static virConnectDriver parallelsConnectDriver = {
--
2.1.0
9 years, 7 months
[libvirt] [PATCH] bhyve: fix build in tests
by Roman Bogorodskiy
Commit ca32929 caused build errors in bhyvexml2argvtest.c because of
some undefined variables.
Pushing under the build breaker rule.
---
tests/bhyvexml2argvtest.c | 4 ----
1 file changed, 4 deletions(-)
diff --git a/tests/bhyvexml2argvtest.c b/tests/bhyvexml2argvtest.c
index 1cce2aa..1c7bc31 100644
--- a/tests/bhyvexml2argvtest.c
+++ b/tests/bhyvexml2argvtest.c
@@ -19,7 +19,6 @@ static int testCompareXMLToArgvFiles(const char *xml,
const char *ldcmdline,
const char *dmcmdline)
{
- int len;
char *actualargv = NULL, *actualld = NULL, *actualdm = NULL;
virDomainDefPtr vmdef = NULL;
virDomainObj vm;
@@ -59,9 +58,6 @@ static int testCompareXMLToArgvFiles(const char *xml,
if (virtTestCompareToFile(actualld, ldcmdline) < 0)
goto out;
- if (virtTestCompareToFile(formatted, xml) < 0)
- goto out;
-
if (virFileExists(dmcmdline) || actualdm) {
if (virtTestCompareToFile(actualdm, dmcmdline) < 0)
goto out;
--
2.3.5
9 years, 7 months