- 24 4月, 2014 6 次提交
-
-
由 Peter Krempa 提交于
To allow future change of virStorageFileMetadata to virStorageSource we need to store a full path in the "path" variable as rest of the code expects it to be a full path. Rename the "path" field to "relPath" to keep tracking the info but allowing a real "path" field.
-
由 Peter Krempa 提交于
Avoid passing lot of arguments into guts of metadata retrieval to fill the actual structure. Temporarily fill the structure before passing it down to the actual metadata extractor. This will later help the inversion of the steps taken to extract the metadata so that this function can be fully converted to virStorageSource as the data struct. This patch also fixes regression when starting a gluster storage pool where the volumes don't have local representation so that the canonicalization of the volume's file name failed. Broken by commit 79f11b35
-
由 Peter Krempa 提交于
Move the code checking the presence of the backing file to the recursive worker function instead of the metadata parser. The recursive worker will later be changed to parse more than just local files and this change will help the separation.
-
由 Peter Krempa 提交于
As we already pass the whole structure down the call path there's no need to return some stuff in a separate argument. Remove the argument and tweak callers to avoid breaking semantics. virStorageFileGetMetadataFromBuf will be refactored later along with the storage driver.
-
由 Peter Krempa 提交于
Don't use the backingStoreRaw as a indication of broken chains. Fill it always and tweak the broken image chain detector to avoid changing the semantics. The new semantics to detect a broken chain is the presence of string in backingStoreRaw but the lack of the backing chain metadata structure in the chain. Now that the raw backing store name is always filled there's no need to pass the raw name variable separately to fill in case the backing is not a file. Tweak the function so that it can handle a NULL in that case.
-
由 Peter Krempa 提交于
The function isn't used in any other source file. Move it so that it doesn't need a declaration.
-
- 23 4月, 2014 4 次提交
-
-
由 Ján Tomko 提交于
Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1088748 The hotplugged vcpus could fail to show up in the guest if they were added during boot, see: https://bugzilla.redhat.com/show_bug.cgi?id=807508 Also change arbitrary to arbitrarily.
-
由 Ján Tomko 提交于
The live change of vcpus was not reflected in the domain status xml and it got lost during libvirtd restart. https://bugzilla.redhat.com/show_bug.cgi?id=1088703
-
由 Roman Bogorodskiy 提交于
- do not lose new definition for an active domain - do not leak oldDef - do not set dom->id if virDomainSaveConfig() fails - do not call virObjectUnlock(vm) if vm is NULL
-
由 Li Zhang 提交于
Currently, libvirt is using legacy USB controller as default. There are problems with VGA which can't work correctly with USB Keyboard and USB Mouse. While providing -nodefaults, ppc64 should be specifying the usb controller explicitly in place of using the legacy controller(-usb). Qemu spapr initialization code when sees "-usb" adds a USB Keyboard and USB Mouse by default. And libvirt has added a USB keyboard and USB mouse. A recent fix in the in qemu VGA code uncoverd this problem, which resulted in addition of extra keyboard and mouse to the qemu machine. This patch is to set pci-ohci as USB default controller. Signed-off-by: NLi Zhang <zhlcindy@linux.vnet.ibm.com>
-
- 22 4月, 2014 5 次提交
-
-
由 Ján Tomko 提交于
Changes: error: invalid argument: vcpu number out of range 2 > 2 to slightly less confusing: error: invalid argument: vcpu number out of range 2 > 1
-
由 Ján Tomko 提交于
Remove the pointer from def->cputune.vcpupin after unplugging the CPU and also free the bitmap contained in the structure by calling virDomainVcpuPinDel instead of VIR_FREE. Introduced by commit 0df1a790. This makes virDomainLookupVcpuPin redundant. https://bugzilla.redhat.com/show_bug.cgi?id=1088165
-
由 Nehal J Wani 提交于
Fix minor typos in source comments Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Eric Blake 提交于
Among other patches, Natanael Copa contributed a fix for pyshmem_available when using musl libc that directly affects libvirt. * .gnulib: Update to latest, in part for musl libc compat. Signed-off-by: NEric Blake <eblake@redhat.com>
-
- 20 4月, 2014 1 次提交
-
-
由 Wojciech Macek 提交于
Implement bhyveDomainCreateXML function. Signed-off-by: NDaniel P. Berrange <berrange@redhat.com> Signed-off-by: NRoman Bogorodskiy <bogorodskiy@gmail.com>
-
- 18 4月, 2014 4 次提交
-
-
由 Laine Stump 提交于
When the default was changed from kvm to vfio, the documentation for hostdev and interface was changed, but the documentation in <network> was forgotten. Also document when the default was changed from "always kvm" to "vfio if available, else kvm" (1.0.5).
-
由 Ján Tomko 提交于
The version check is for >=1.3.0, but ComputeCmdFlags is only called for QEMU <1.2.0.
-
由 Ján Tomko 提交于
QEMU only supports it on x86, but we've been assuming it for all QEMUs when doing QMP capability detection. https://bugzilla.redhat.com/show_bug.cgi?id=1066145
-
由 Nehal J Wani 提交于
While running virstoragetest, valgrind pointed out the following memory leak: ==8142== 2 bytes in 1 blocks are definitely lost in loss record 1 of 92 ==8142== at 0x4A069EE: malloc (vg_replace_malloc.c:270) ==8142== by 0x4E7B53E: mdir_name (dirname-lgpl.c:78) ==8142== by 0x4CBE2B0: virStorageFileGetMetadataInternal (virstoragefile.c:595) ==8142== by 0x4CBE651: virStorageFileGetMetadataFromFDInternal (virstoragefile.c:1086) ==8142== by 0x4CBEEB4: virStorageFileGetMetadataRecurse (virstoragefile.c:1175) ==8142== by 0x4CBF1DE: virStorageFileGetMetadata (virstoragefile.c:1270) ==8142== by 0x4028AD: testStorageChain (virstoragetest.c:275) ==8142== by 0x407B91: virtTestRun (testutils.c:201) ==8142== by 0x4039D7: mymain (virstoragetest.c:534) ==8142== by 0x40830D: virtTestMain (testutils.c:789) ==8142== by 0x3E6CE1ED1C: (below main) (libc-start.c:226) ...62 times
-
- 17 4月, 2014 1 次提交
-
-
由 Stefan Berger 提交于
Fix a locking problem by leaving the function via the cleanup label. Signed-off-by: NStefan Berger <stefanb@linux.vnet.ibm.com>
-
- 16 4月, 2014 4 次提交
-
-
由 John Ferlan 提交于
Commit id '18642d10' caused a virt-test regression for NFS backend storage error path checks when running the command: 'virsh find-storage-pool-sources-as netfs Unknown ' when the host did not have Gluster installed. Prior to the commit, the test would fail with the error: error: internal error: Child process (/usr/sbin/showmount --no-headers --exports Unknown) unexpected exit status 1: clnt_create: RPC: Unknown host After the commit, the error would be ignored, the call would succeed, and an empty list of pool sources returned. This was tucked into the commit message as an expected outcome. When the target host does not have a GLUSTER_CLI this is a regression over the previous release. Furthermore, even if Gluster CLI was present, but had a failure to get devices, the API would return a failure even if the NFS backend had found devices. Modify the logic to return failure when the NFS backend check fails and there's no GLUSTER_CLI or when both backend checks fail. If either returns success and GLUSTER_CLI is defined, then fetch and return a list of source devices even if it's empty
-
由 Eric Blake 提交于
I noticed that depending on the <driver> attributes the user passed in, the output may omit the <driver> element altogether. For example, the rerror_policy has had this problem since commit 4bb4109f in Oct 2011. But in adding testsuite coverage to expose it, I found another problem: the C code is just fine without a driver name, but the XML validator required either a name or a cache mode. * src/conf/domain_conf.c (virDomainDiskDefFormat): Update conditional. * docs/schemas/domaincommon.rng (diskDriver): Simplify. * tests/qemuxml2argvdata/qemuxml2argv-disk-drive-copy-on-read.xml: * tests/qemuxml2argvdata/qemuxml2argv-disk-drive-copy-on-read.args: New files. * tests/qemuxml2argvdata/qemuxml2argv-disk-drive-discard.xml: Enhance test. * tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-discard.xml: Likewise. * tests/qemuxml2argvtest.c (mymain): New test. * tests/qemuxml2xmltest.c (mymain): Likewise. Signed-off-by: NEric Blake <eblake@redhat.com> Signed-off-by: NJiri Denemark <jdenemar@redhat.com>
-
由 Eric Blake 提交于
To make <disk> schema more maintainable and to allow for moving the pieces to a common file in the future. It relies on the ability to override definitions as part of an include, set up in the previous patch. The diff is a bit hard to read, because it mixes reindentation with refactoring; 'git diff -b --patience' may help. * docs/schemas/domaincommon.rng (disk): Refactor into pieces. (diskSource, diskSourceFile, diskSourceBlock, diskSourceDir) (diskSourceVolume: New defines. (diskSourceNetwork): Revise scope. * docs/schemas/domainsnapshot.rng (disksnapshot): Adjust. * tests/domainsnapshotxml2xmlin/disk-seclabel-invalid.xml, tests/domainsnapshotxml2xmlin/disk-network-seclabel-invalid.xml: New tests to check seclabel is forbidden in domain snapshot by schema. Signed-off-by: NEric Blake <eblake@redhat.com> Signed-off-by: NJiri Denemark <jdenemar@redhat.com>
-
由 Eric Blake 提交于
This patch is my first experience playing with nested grammars, as documented in http://relaxng.org/tutorial-20011203.html#IDA3PZR. I plan on doing more overrides in order to make the RelaxNG grammar mirror the C code refactoring into a common virStorageSource, but where different clients of that source do not support the same subset of functionality. By starting with something fairly easy to validate, I can make sure my later patches will be possible. This patch adds a use of the no-op <ref name='sourceStartupPolicy'/> to the disksnapshot definition, so that the snapshot version of a type='file' <source> more closely resembles the version in domaincommon. A future patch will merge the two files into using a common define, but this patch is sufficient for testing that adding <source startupPolicy='optional'/> in any of the tests/domainsnapshotxml2xmlin/*.xml files still gets rejected unless it occurs within the <domain> subelement, because the definition of startupPolicy is empty outside of domain.rng. * docs/schemas/storagecommon.rng (storageStartupPolicy) (storageSourceExtra): Create no-op defaults. * docs/schemas/domainsnapshot.rng (domain): Use nested grammar to avoid restricting <domain>. (storageSourceExtra): Create new override. (disksnapshot): Access overrides through common names. * docs/schemas/domaincommon.rng (disk): Access overrides through common names. * docs/schemas/domain.rng (storageStartupPolicy) (storageSourceExtra): Create new overrides. Signed-off-by: NEric Blake <eblake@redhat.com> Signed-off-by: NJiri Denemark <jdenemar@redhat.com>
-
- 15 4月, 2014 5 次提交
-
-
由 Eric Blake 提交于
Domain snapshots should only permit an external snapshot into a storage format that permits a backing chain, since the new snapshot file necessarily must be backed by the existing file. The C code for the qemu driver is a little bit stricter in currently enforcing only qcow2 or qed, but at the XML parser level, including virt-xml-validate, it is fairly easy to enforce that a user can't request a 'raw' external snapshot. * docs/schemas/storagecommon.rng (storageFormat): Split out... (storageFormatBacking): ...new sublist. * docs/schemas/domainsnapshot.rng (disksnapshotdriver): Use new type. * src/util/virstoragefile.h (virStorageFileFormat): Rearrange for easier code management. * src/util/virstoragefile.c (virStorageFileFormat, fileTypeInfo): Likewise. * src/conf/snapshot_conf.c (virDomainSnapshotDiskDefParseXML): Use new marker to limit selection of formats. Signed-off-by: NEric Blake <eblake@redhat.com> Signed-off-by: NJiri Denemark <jdenemar@redhat.com>
-
由 Eric Blake 提交于
We had incomplete RelaxNG support for storage formats listed in virstoragefile.h: commit 027bf2ea added 'vdi' but forgot to update the <volume> and <domain> xml lists; the <volume> list was also missing 'fat' and 'vhd'. Maintaining two lists is a recipe for them getting out of sync, so make the list common so that both contexts benefit the next time we add a format in a single location. * docs/schemas/domaincommon.rng (storageFormat): Move... * docs/schemas/storagecommon.rng: ...here, and add vdi. * docs/schemas/storagevol.rng (formatfile): Use common list. Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Eric Blake 提交于
In general, we try to make virt-xml-validate tolerant of input elements in any order when possible. However, as written, the RNG grammar did not permit <source> unless there was an explicit type= attribute (even though the C code manages just fine by defaulting to type='file'). After making the attribute optional on the 'file' branch, I noticed that the use of diskspec was now redundant with the branch when no <source> was supplied. View this patch with 'git diff -b' for a better picture of the schema change. * docs/schemas/domaincommon.rng (disk): Hoist 'diskspec' out of choice, make type='file' default, and still preserve interleave. * tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-source-pool.xml: * tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-drive-discard.xml: New files. * tests/qemuxml2argvdata/qemuxml2argv-disk-source-pool.xml: * tests/qemuxml2argvdata/qemuxml2argv-disk-drive-discard.xml: Reorder XML. * tests/qemuxml2xmltest.c (mymain): Cover new files. Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Martin Kletzander 提交于
In order to do that, virNodeSuspendSupportsTargetPMUtils() and virSystemdPMSupportTarget() are created even when pm-utils and dbus are compiled out, respectively, but in that case returning -2 meaning "unavailable" (this return code was already used for unavailability before). Error is reported in virNodeSuspendSupportsTarget() only if both functions returned -2, otherwise the error (or success) is properly propagated up the stack. Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
-
- 14 4月, 2014 2 次提交
-
-
由 Eric Blake 提交于
Having two tiny files with a couple definitions didn't make as much sense as one common file, especially since I plan to add more definitions and use it in more places. * docs/schemas/storageencryption.rng: Merge this... * docs/schemas/storagefilefeatures.rng: ...and this, into... * docs/schemas/storagecommon.rng: ...this new file. * docs/schemas/Makefile.am (schema_DATA): Reflect renames. * docs/schemas/storagevol.rng: Likewise. * docs/schemas/domaincommon.rng: Likewise. * libvirt.spec.in: Likewise. * mingw-libvirt.spec.in: Likewise. Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Jiri Denemark 提交于
When passing migration bandwidth to QEMU, we multiply it by 1024 * 1024 to convert the speed to B/s and the result still needs to fit in int64_t. https://bugzilla.redhat.com/show_bug.cgi?id=1083483Signed-off-by: NJiri Denemark <jdenemar@redhat.com>
-
- 12 4月, 2014 8 次提交
-
-
由 Eric Blake 提交于
Another field no longer needed, getting us one step closer to merging virStorageFileMetadata and virStorageSource. * src/util/virstoragefile.h (_virStorageFileMetadata): Drop field. * src/util/virstoragefile.c (virStorageFileGetMetadataInternal) (virStorageFileGetMetadataFromFDInternal): Alter signature. (virStorageFileFreeMetadata, virStorageFileGetMetadataFromBuf) (virStorageFileGetMetadataFromFD): Adjust clients. * tests/virstoragetest.c (_testFileData, testStorageChain) (mymain): Simplify test. Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Eric Blake 提交于
Thanks to the testsuite, I feel quite confident that this rewrite is correct; it gives the same results for all cases except for one. I can make the argument that _that_ case was a pre-existing bug: when looking up relative names, the lookup is supposed to be pegged to the directory that contains the parent qcow2 file. Thus, this resolves the fixme first mentioned in commit 367cd69d (even though I accidentally removed the fixme comment early in 74430fe3). * src/util/virstoragefile.c (virStorageFileChainLookup): Depend on new rather than old fields. * tests/virstoragetest.c (mymain): Adjust test to match fix. Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Eric Blake 提交于
The original chain lookup code had to pass in the starting name, because it was not available in the chain. But now that we have added fields to the struct, this parameter is redundant. * src/util/virstoragefile.h (virStorageFileChainLookup): Alter signature. * src/util/virstoragefile.c (virStorageFileChainLookup): Adjust handling of top of chain. * src/qemu/qemu_driver.c (qemuDomainBlockCommit): Adjust caller. * tests/virstoragetest.c (testStorageLookup, mymain): Likewise. Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Eric Blake 提交于
The chain lookup function was inconsistent on whether it left a message in the log when looking up a name that is not found on the chain (leaving a message for OOM or if name was relative but not part of the chain), and could litter the log even when successful (when name was relative but deep in the chain, use of virFindBackingFile early in the chain would complain about a file not found). It's easier to make the function consistently emit a message exactly once on failure, and to let all callers rely on the clean semantics. * src/util/virstoragefile.c (virStorageFileChainLookup): Always report error on failure. Simplify relative lookups. * src/qemu/qemu_driver.c (qemuDomainBlockCommit): Avoid overwriting error. Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Eric Blake 提交于
When checking if two filenames point to the same inode (whether by hardlink or symlink), sometimes one of the names might be relative. This convenience function makes it easier to check. * src/util/virfile.h (virFileRelLinkPointsTo): New prototype. * src/util/virfile.c (virFileRelLinkPointsTo): New function. * src/libvirt_private.syms (virfile.h): Export it. * src/xen/xm_internal.c (xenXMDomainGetAutostart): Use it. Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Eric Blake 提交于
I realized that we had no good test coverage of looking up a name from within a backing chain, even though code like block-commit is relying on it. * tests/virstoragetest.c (testStorageLookup): New function. (mymain): New tests. Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Cédric Bosdonnat 提交于
This uses the dbus api of systemd to check the power management capabilities of the node.
-
由 Eric Blake 提交于
Noticed while tweaking the RelaxNG grammar for <disk> elements. * tests/qemuxml2xmloutdata/qemuxml2xmlout-numad-static-vcpu-no-numatune.xml: * tests/qemuxml2xmloutdata/qemuxml2xmlout-disk-cdrom-empty.xml: Drop unused files. * tests/qemuargv2xmltest.c (testInfo, DO_TEST_FULL): Drop unused field. Signed-off-by: NEric Blake <eblake@redhat.com>
-