- 10 6月, 2014 4 次提交
-
-
由 Yohan BELLEGUIC 提交于
The machine is unregistered and its vbox XML file is changed in order to add snapshot information. The machine is then registered with the snapshot to redefine.
-
由 Yohan BELLEGUIC 提交于
This structure contains the data to be saved in the VirtualBox XML file and can be manipulated with severals exposed functions. The structure is created by vboxSnapshotLoadVboxFile taking the machine XML file. It also can rewrite the XML by using vboxSnapshotSaveVboxFile.
-
由 Manuel VIVES 提交于
It will be needed for the future patches because we will redefine snapshots
-
由 Ján Tomko 提交于
This fixes startup of a domain with: <seclabel type='none' model='dac'/> on a host with selinux and dac drivers and security_default_confined = 0 https://bugzilla.redhat.com/show_bug.cgi?id=1105939 https://bugzilla.redhat.com/show_bug.cgi?id=1102611
-
- 09 6月, 2014 4 次提交
-
-
由 Laine Stump 提交于
The qemu driver always adds these options to the qemu commandlines, but the commandline parser didn't recognize them, so sending a libvirt-generated qemu commandline to its own argvtoxml would always result in a warning message and a qemu namespace added to the xml. Since the options don't add any functionality to the domain, they should just be ignored (similar to -S). Note that we can't yet add a test for this to qemuargv2xmltest, because we would have to add QEMU_CAPS_NODEFCONFIG and QEMU_CAPS_DEVICE to the capabilities for any corresponding xml2argvtest, and QEMU_CAPS_DEVICE would necessitate having support for parsing a memballoon device in order for qemuargv2xmltest to pass. So we wait to add a test for -nodefconfig and -nodefaults until after adding support for parsing -device virtio-balloon-*.
-
由 Laine Stump 提交于
qmeuargv2xmltest.c would fail any test that logged anything during qemuParseCommandline(), but then discard the log message, even with VIR_TEST_DEBUG=2. This patch outputs the log messages with fprintf(stderr,...) when debug logging is on. In the process of modifying that logic, the testInfo data was made more similar to that of qemuxml2argvtest.c - rather than turning info->extraFlags into a bool, an enum of flags is defined, the info struct is given an "unsigned int flags", and FLAG_EXPECT_WARNING is saved into info->flags, to be checked during the test; this will make it easier to add other FLAG_EXPECT_* items in the future.
-
由 Peter Krempa 提交于
4d06af97 introduced a possible memory leak of the memory allocated into the "cpu" pointer in parallelsBuildCapabilities in the case "nodeGetInfo()" would fail right after the allocation. Rearrange the code to avoid the possibility of the leak. Found by Coverity.
-
由 Peter Krempa 提交于
bhyveload and bhyvectl wouldn't be checked otherwise as the configure script wouldn't execute one of the tests: checking for bhyve... /usr/local/sbin/bhyve checking for bhyvectl... /usr/local/sbin/bhyvectl checking for bhyveload... /usr/local/sbin/bhyveload ./configure: line 62602: test: too many arguments Fix the shell statement testing the 3 binaries.
-
- 08 6月, 2014 1 次提交
-
-
由 Matthias Bolte 提交于
The original implementation of the VMX config parser assumed that the virtualHW.version would have more influence on the content of the VMX file than it actually seems to have. It started with accepting only version 4. Additonal versions were added later without any additional changes in the parser itself. This suggests that the influence of the virtualHW.version on the content and format of the VMX file is small or non-existent. The parser worked without any changes across several virtualHW and vSphere versions. So instead of adding new virtualHW.version values to the parser as they come along, or adding an extra flag to allow unknown virtualHW.version values just relax the check to require version 4 or later.
-
- 07 6月, 2014 1 次提交
-
-
由 Eric Blake 提交于
Now that we track a disk mirror as a virStorageSource, we might as well update the XML to theoretically allow any type of mirroring destination (not just a local file). A later patch will also be reusing <mirror> to track the block commit of the top layer of a chain, which is another case where libvirt needs to update the backing chain after the job is finally pivoted, and since backing chains can have network backing files as the destination to commit into, it makes more sense to display that in the XML. This patch changes output-only XML; it was already documented that <mirror> does not affect a domain definition at this point (because qemu doesn't provide persistent bitmaps yet). Any application that was starting a block copy job with older libvirt and then relying on the domain XML to determine if it was complete will no longer be able to access the file= and format= attributes of mirror that were previously used. However, this is not going to be a problem in practice: the only time a block copy job works is on a transient domain, and any app that is managing a transient domain probably already does enough of its own bookkeeping to know which file it is mirroring into without having to re-read it from the libvirt XML. The one thing that was likely to be used in a mirroring job was the ready= attribute, which is unchanged. Meanwhile, I made sure the schema and parser still accept the old format, even if we no longer output it, so that upgrading from an older version of libvirt is seamless. * docs/schemas/domaincommon.rng (diskMirror): Alter definition. * src/conf/domain_conf.c (virDomainDiskDefParseXML): Parse two styles of mirror elements. (virDomainDiskDefFormat): Output new style. * tests/qemuxml2argvdata/qemuxml2argv-disk-mirror-old.xml: New file, copied from... * tests/qemuxml2argvdata/qemuxml2argv-disk-mirror.xml: ...here before modernizing. * tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-mirror-old*: New files. * tests/qemuxml2xmltest.c (mymain): Test both styles. Signed-off-by: NEric Blake <eblake@redhat.com>
-
- 06 6月, 2014 21 次提交
-
-
由 Eric Blake 提交于
The current implementation of 'virsh blockcopy' (virDomainBlockRebase) is limited to copying to a local file name. But future patches want to extend it to also copy to network disks. This patch converts over to a virStorageSourcePtr, although it should have no semantic change visible to the user, in anticipation of those future patches being able to use more fields for non-file destinations. * src/conf/domain_conf.h (_virDomainDiskDef): Change type of mirror information. * src/conf/domain_conf.c (virDomainDiskDefParseXML): Localize mirror parsing into new object. (virDomainDiskDefFormat): Adjust clients. * src/qemu/qemu_domain.c (qemuDomainDeviceDefPostParse): Likewise. * src/qemu/qemu_driver.c (qemuDomainBlockPivot) (qemuDomainBlockJobImpl, qemuDomainBlockCopy): Likewise. Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Eric Blake 提交于
As part of the work on backing chains, I'm finding that it would be easier to directly manipulate chains of pointers (adding a snapshot merely adjusts pointers to form the correct list) rather than copy data from one struct to another. This patch converts domain disk source to be a pointer. In this patch, the pointer is ALWAYS allocated (thanks in part to the previous patch forwarding all disk def allocation through a common point), and all other changse are just mechanical fallout of the new type; there should be no functional change. It is possible that we may want to leave the pointer NULL for a cdrom with no medium in a later patch, but as that requires a closer audit of the source to ensure we don't fault on a null dereference, I didn't do it here. * src/conf/domain_conf.h (_virDomainDiskDef): Change type of src. * src/conf/domain_conf.c: Adjust all clients. * src/security/security_selinux.c: Likewise. * src/qemu/qemu_domain.c: Likewise. * src/qemu/qemu_command.c: Likewise. * src/qemu/qemu_conf.c: Likewise. * src/qemu/qemu_process.c: Likewise. * src/qemu/qemu_migration.c: Likewise. * src/qemu/qemu_driver.c: Likewise. * src/lxc/lxc_driver.c: Likewise. * src/lxc/lxc_controller.c: Likewise. * tests/securityselinuxlabeltest.c: Likewise. Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Eric Blake 提交于
A future patch wants to create disk definitions with non-zero default contents; to avoid crashes, all callers that allocate a disk definition should go through a common point. I found allocation points by looking for any code that increments ndisks, as well as any matches for ALLOC.*disk. Most places that modified ndisks were covered by the parse from XML to domain/device definition by initial domain creation or device hotplug; I also hand-checked all drivers that generate a device struct on the fly during getXMLDesc. * src/conf/domain_conf.h (virDomainDiskDefNew): New prototype. * src/conf/domain_conf.c (virDomainDiskDefNew): New function. (virDomainDiskDefParseXML): Use it. * src/parallels/parallels_driver.c (parallelsAddHddInfo): Likewise. * src/qemu/qemu_command.c (qemuParseCommandLine): Likewise. * src/vbox/vbox_tmpl.c (vboxDomainGetXMLDesc): Likewise. * src/vmx/vmx.c (virVMXParseDisk): Likewise. * src/xenxs/xen_sxpr.c (xenParseSxprDisks, xenParseSxpr): Likewise. * src/xenxs/xen_xm.c (xenParseXM): Likewise. * src/libvirt_private.syms (domain_conf.h): Export it. Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Eric Blake 提交于
As part of the work on backing chains, I'm finding that it would be easier to directly manipulate chains of pointers (adding a snapshot merely adjusts pointers to form the correct list) rather than copy data from one struct to another. This patch converts snapshot source to be a pointer. In this patch, the pointer is ALWAYS allocated (any code that increases ndisks now also allocates a source pointer for each new disk), and all other changes are just mechanical fallout of the new type; there should be no functional change. It is possible that we may want to leave the pointer NULL for internal snapshots in a later patch, but as that requires a closer audit of the source to ensure we don't fault on a null dereference, I didn't do it here. * src/conf/snapshot_conf.h (_virDomainSnapshotDiskDef): Change type of src. * src/conf/snapshot_conf.c: Adjust all clients. * src/qemu/qemu_conf.c: Likewise. * src/qemu/qemu_driver.c: Likewise. Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Michal Privoznik 提交于
A PCI device can be associated with a specific NUMA node. Later, when a guest is pinned to one NUMA node the PCI device can be assigned on different NUMA node. This makes DMA transfers travel across nodes and thus results in suboptimal performance. We should expose the NUMA node locality for PCI devices so management applications can make better decisions. Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
-
由 Ján Tomko 提交于
Report CPU affinities / online CPUs in human-readable form when this flag is present: Before: CPU Affinity: y-yy After: CPU Affinity: 0,2-3 (out of 4) https://bugzilla.redhat.com/show_bug.cgi?id=985980
-
由 Ján Tomko 提交于
For converting bitmap data to human-readable strings.
-
由 Ján Tomko 提交于
It already reports an error if STRDUP fails.
-
由 Ján Tomko 提交于
This simplifies the usage in {libxl,qemu}DomainGetNumaParameters and it's needed for consistent error reporting in virBitmapFormat. Also remove the forgotten ATTRIBUTE_NONNULL marker.
-
由 Ján Tomko 提交于
This allows reuse of the result printing code.
-
由 Ján Tomko 提交于
Initialize 'ret' to false and introduce a cleanup label.
-
由 Alexander Burluka 提交于
Openstack uses (or will start to using) CPU info from the capabilities XML. So this section is expanded, added CPU info about arch, type and info about number of cores, sockets and threads. Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Alexander Burluka 提交于
Openstack Nova (starting at Icehouse release) requires this function to start VM. Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Alexander Burluka 提交于
OpenStack Nova requires this function to start VM instance. Cpumask info is obtained via prlctl utility. Unlike KVM, Parallels Cloud Server is unable to set cpu affinity mask for every VCpu. Mask is unique for all VCpu. You can set it using 'prlctl set <vm_id|vm_name> --cpumask <{n[,n,n1-n2]|all}>' command. For example, 'prlctl set SomeDomain --cpumask 0,1,5-7' would set this mask to yy---yyy. Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Martin Kletzander 提交于
Based on discussion with Eric: https://www.redhat.com/archives/libvir-list/2014-March/msg01001.htmlSigned-off-by: NMartin Kletzander <mkletzan@redhat.com>
-
由 Martin Kletzander 提交于
Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
-
由 Martin Kletzander 提交于
New gettext-0.19 doesn't like it and we can't build without it. Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
-
由 Ján Tomko 提交于
Commit fff74b27 moved the probing into virStorageFileGetMetadataFromBuf but didn't update the format in volume definition. https://bugzilla.redhat.com/show_bug.cgi?id=1104908
-
由 Ján Tomko 提交于
Jump out early if no metadata was detected (for directories). Join the error and cleanup labels.
-
由 Ján Tomko 提交于
To match the convention: ret - current function's return value rc - other function's return values
-
- 05 6月, 2014 6 次提交
-
-
由 Michal Privoznik 提交于
At the moment we are missing even basic documentation on our capabilities XML. Without demand on completeness, I'm reorganizing the document structure and adding very basic documentation to two major components of the capabilities XML. These stubs are intended to be enhanced in the future. Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
-
由 Michal Privoznik 提交于
For now only one test is introduced. It's purpose in life is to check we don't break NUMA host distances XML format. Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
-
由 Jim Fehlig 提交于
This patch adds initial migration support to the libxl driver, using the VIR_DRV_FEATURE_MIGRATION_PARAMS family of migration functions. Signed-off-by: NJim Fehlig <jfehlig@suse.com>
-
由 Jim Fehlig 提交于
Introduce a simple libxlDomainDefCheckABIStability() function that can be used check ABI stability between two virDomainDef objects. Signed-off-by: NJim Fehlig <jfehlig@suse.com>
-
由 Eric Blake 提交于
I accidentally typed 'make' in the srcdir of a VPATH build, and was surprised to see this: $ make /bin/sh: s/^[ +-]//;s/ .*//: No such file or directory INFO: gnulib update required; running ./autogen.sh first make: -n: Command not found ./autogen.sh I am going to run ./configure with no arguments - if you wish to pass any to it, please specify them on the ./autogen.sh command line. running bootstrap... ./bootstrap: Bootstrapping from checked-out libvirt sources... ./bootstrap: getting gnulib files... Oops - we're trying to execute some fairly bogus command names, and then trying to configure in-tree (which breaks all existing VPATH builds, since automake refuses to do a VPATH build if it detects an in-tree configure). The third line (executing "-n") is fixed by updating to the latest gnulib; the rest of the problem is fixed by copying the same filtering in our cfg.mk as what gnulib just added, so that we avoid any $(shell) invocations which in turn depend on variables that are only populated by a working Makefile. With that in place, we are back to the much nicer: $ make There seems to be no Makefile in this directory. You must run ./configure before running 'make'. make: *** [abort-due-to-no-makefile] Error 1 Additionally, although harder to see - there was a trailing space in the message warning us that autogen would run an in-tree configure. * .gnulib: Update to latest, in part for maint.mk improvements. * cfg.mk (_update_required): Don't check for update in unconfigured directory. * autogen.sh (no_git): Drop trailing space. Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Eric Blake 提交于
Reusing the maint.mk code allows for a more efficient syntax check (fewer grep processes), and a more compact representation of what we are really checking for in commit 1919e355. * cfg.mk (sc_require_locale_h): Use maint.mk loop instead of rolling our own. Signed-off-by: NEric Blake <eblake@redhat.com>
-
- 04 6月, 2014 3 次提交
-
-
由 Michal Privoznik 提交于
On some systems, libnuma can be present but it's so ancient that it misses some symbols that virNumaGetDistances() needs. To be more precise: numa_bitmask_isbitset() and numa_nodes_ptr are the symbols in question. Fortunately, they were both introduced in the same release so it's sufficient for us to check for only one of them. And the winner is numa_bitmask_isbitset(). Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
-
由 Michal Privoznik 提交于
In the past we had some issues where setlocale() was called without corresponding include of locale.h. While on some systems this may work, on others the compilation failed. We should have a syntax-check rule for that to prevent this from happening again. Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
-
由 Michal Privoznik 提交于
In case the libvirt is built without numactl support, we're missing the virNumaGetDistances() stub so the linking fails: CCLD libvirt_lxc libvirt_lxc-nodeinfo.o: In function `virNodeCapsGetSiblingInfo': /home/zippy/tmp/libvirt.git/src/nodeinfo.c:1763: undefined reference to `virNumaGetDistances' collect2: error: ld returned 1 exit status make[3]: *** [libvirt_lxc] Error 1 The issue was introduced in 77c830d8. Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
-