- 28 2月, 2013 1 次提交
-
-
由 Eric Blake 提交于
https://bugzilla.redhat.com/show_bug.cgi?id=896092 mentions that qemu 1.4 and earlier only accept a simple start-stop range for the cpu=... argument of -numa. Libvirt would attempt to use -numa cpu=1,3 for a disjoint range, which did not work as intended. Upstream qemu will be adding a new syntax for disjoint cpu ranges in 1.5; but the design for that syntax is still under discussion at the time of this patch. So for libvirt 1.0.3, it is safest to just reject attempts to build an invalid qemu command line; in the future, we can add a capability bit and translate to the final accepted design for selecting a disjoint cpu range in numa. * src/qemu/qemu_command.c (qemuBuildNumaArgStr): Reject disjoint ranges.
-
- 27 2月, 2013 17 次提交
-
-
由 Laine Stump 提交于
This reverts commit 383ebc46. We decided the xml for this feature needed more thought to make sure we are doing it the best way, in particular wrt option values that have multiple items.
-
由 Peter Krempa 提交于
To avoid confusion about usage of this function explicitly document that this function returns copy of the attribute string.
-
由 Peter Krempa 提交于
Users may want to specify XML entities in paths to devices. Ensure they are parsed and used properly.
-
由 Peter Krempa 提交于
-
由 Ján Tomko 提交于
Reported by John Ferlan.
-
由 Michal Privoznik 提交于
These two flags in fact are mutually exclusive. Requesting them both doesn't make any sense regardless of hypervisor driver. Hence, we have to make it within libvirt.c file instead of fixing it in each driver.
-
由 Philipp Hahn 提交于
Add qed for dirfs pool. Add ocfs2 for disk pool. Add lvm2 for disk and logical pool. Add cifs and glusterfs for netfs pool. Note: POOL_DISK_LVM2 can not be created by "parted mklabel", but is only returned from auto-detection on disk pools. Signed-off-by: NPhilipp Hahn <hahn@univention.de>
-
由 Eric Blake 提交于
Eugene Marcotte reported that if gcrypt-devel (a prereq of gnutls-devel) is not present, then compilation fails due to an unconditional use of <gcrypt.h>. * src/libvirt.c (includes): Properly guard use of gcrypt.h.
-
由 Eric Blake 提交于
This reverts commit 0bbbd42c. The design for this feature is not complete, and may change the name of the 'schid' attribute. Revert requested by Viktor Mihajlovski.
-
由 Eric Blake 提交于
This reverts commit 24aa7f8d. The implementation to match the documentation is not complete yet, and the final design might change the name of the 'schid' attribute.
-
由 Philipp Hahn 提交于
virStrToLong(..., 8, ...) already requires the mode to be octal. Change the relax-ng schema to check for octal as well. Signed-off-by: NPhilipp Hahn <hahn@univention.de>
-
由 Eric Blake 提交于
virstoragetest was failing on RHEL 5, but with no good error message: TEST: virstoragetest 0 FAIL It turns out that qemu-img was so old, that it lacked support for -o backing_file. It didn't help that the test was also using qemu-img from PATH, even after first probing for kvm-img. * tests/virstoragetest.c (testPrepImages): Consistently use discovered binary. Skip instead of fail if qemu-img fails during setup.
-
由 Doug Goldstein 提交于
This fixes a potential NULL deref identified by John Ferlan <jferlan@redhat.com> if scandir() didn't return an expected value.
-
由 Daniel P. Berrange 提交于
The parallels storage driver declared some loop variables inside the for(;;). This is not allowed by libvirt coding standards Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
This change tried to fix a crash with changing CDROM media but failed to actually do so commit d0172d2b Author: Osier Yang <jyang@redhat.com> Date: Tue Feb 19 20:27:45 2013 +0800 qemu: Remove the shared disk entry if the operation is ejecting or updating It was still accessing disk->src, when the entire 'disk' object has been free'd already. Even if it weren't free'd, accessing the 'src' value of virDomainDiskDef is not allowed without first validating disk->type is file or block. Just remove the broken code entirely. Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Eric Blake 提交于
On RHEL 5, 'make check' included failures such as: TEST: virstoragetest unable to create directory /virstoragedata/sub unable to return to correct directory, refusing to clean up /virstoragedata It turns out that with automake 1.9.x, $(abs_builddir) is not automatically provided. We have previously worked around this by using `pwd` before, but because we did not do it everywhere, we had a number of broken tests. This patch brings RHEL 5 from 8 failed tests down to 5 (the remaining failures may be due to bugs in the older libxml2 and RNG schema validation available in RHEL 5, so I'm not sure if they can be fixed in libvirt, but I'm still investigating). * tests/Makefile.am (AM_CFLAGS): Reliably set abs_builddir. (*_la_CFLAGS): Factor out common settings; delete when nothing remains to be added.
-
由 Eric Blake 提交于
On RHEL 5, I noticed this test failure message: TEST: qemumonitorjsontest libvirt not compiled with yajl, skippingSKIP: qemumonitorjsontest * tests/virstoragetest.c (testPrepImages): Use simpler fputs. * tests/qemumonitorjsontest.c (mymain): Ensure trailing newline.
-
- 26 2月, 2013 10 次提交
-
-
由 Ján Tomko 提交于
VIR_ERR_NO_CONNECT already contains "no connection driver available". This patch changes: no connection driver available for No connection for URI hello to: no connection driver available for hello Bug: https://bugzilla.redhat.com/show_bug.cgi?id=851413
-
由 Paolo Bonzini 提交于
Currently we call virSetDeviceUnprivSGIO with val == 0 if a block device has an sgio attribute. But for sgio='filtered', we know that a kernel with no unpriv_sgio support will always behave as the user wanted. In this case, there is no need to call the function and report a (bogus) error. Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
-
由 Eric Blake 提交于
testutils.c likes to print summaries after a test completes, including if it failed. But if the test outright exit()s, this summary is skipped. Enforce that we return instead of exit. * cfg.mk (sc_prohibit_exit_in_tests): New syntax check. * tests/commandhelper.c (main): Fix offenders. * tests/qemumonitorjsontest.c (mymain): Likewise. * tests/seclabeltest.c (main): Likewise. * tests/securityselinuxlabeltest.c (mymain): Likewise. * tests/securityselinuxtest.c (mymain): Likewise. * tests/testutils.h (VIRT_TEST_MAIN_PRELOAD): Likewise. * tests/testutils.c (virtTestMain): Likewise. (virtTestCaptureProgramOutput): Use symbolic name.
-
由 Eric Blake 提交于
Now that the segfault is solved, we can skip instead of fail the test when yajl is not present. * tests/qemumonitorjsontest.c (mymain): Skip if no yajl.
-
由 Eric Blake 提交于
On a machine without yajl headers, I was seeing random segfaults from qemumonitorjsontest (about 90% of the runs on my particular machine). The segfault was inside virClassIsDerivedFrom, which points to a case of a race leading to unreferencing a stale pointer to an object that had already been freed. I also noticed that if I got the segfault, I was seeing messages such as: 2013-02-22 16:12:37.504+0000: 19833: error : virNetSocketWriteWire:1361 : Cannot write data: Bad file descriptor which is also evidence of deferencing a stale pointer. I traced it to a race where qemuMonitorTestIO could execute late, after the main thread had already called qemuMonitorTestFree and called virNetSocketClose(test->client) but not clearing it out to NULL. Sure enough, after test->client has been closed, fd is -1, which causes an attempt to write to the socket to fail, which in turn triggers the error code of qemuMonitorTestIO that tries to re-close test->client. * tests/qemumonitortestutils.c (qemuMonitorTestIO): Don't attempt to free client again if test already quit.
-
由 Eric Blake 提交于
If virCondInit fails (okay, so that's unlikely), then we end up attempting a virObjectUnlock() on the cleanup path, even though we don't hold a lock. This is not guaranteed to be safe. While at it, I noticed a couple places where we were referencing mon->fd outside locks. * src/qemu/qemu_monitor.c (qemuMonitorOpenInternal): Minimize lock duration. mon->watch doesn't need clean up on error. (qemuMonitorGetBlockExtent, qemuMonitorBlockResize): Don't dereference fd outside of lock.
-
由 Eric Blake 提交于
I built without yajl support, and noticed a strange failure message in qemumonitorjsontest: 2013-02-22 16:12:37.503+0000: 19812: error : virJSONValueToString:1119 : internal error No JSON parser implementation is available 2013-02-22 16:12:37.503+0000: 19812: error : qemuMonitorJSONCommandWithFd:253 : out of memory While a later patch will fix the test to skip when json is not present, this patch avoids overriding the more useful error message from virJSONValueToString returning NULL. * src/qemu/qemu_monitor_json.c (qemuMonitorJSONCommandWithFd): Don't override message. (qemuMonitorJSONCheckError): Don't print NULL. * src/qemu/qemu_agent.c (qemuAgentCommand): Don't override message. (qemuAgentCheckError): Don't print NULL. (qemuAgentArbitraryCommand): Properly fail on OOM.
-
由 Peter Krempa 提交于
-
由 Peter Krempa 提交于
The new TypedParam helper APIs allow to simplify this function significantly. This patch integrates the fix in 75e5bec9 by correctly ordering the setting functions instead of reordering the parameters.
-
由 Doug Goldstein 提交于
The bridge device was showing the vnet devices created for the domains as connected to the bridge. libvirt should only show host devices when trying to get the interface definition rather than the domain devices as well.
-
- 25 2月, 2013 12 次提交
-
-
由 Philipp Hahn 提交于
uid_t and gid_t are opaque types, ranging from s32 to u32 to u64. Explicitly cast the magic -1 to the appropriate type. Signed-off-by: NPhilipp Hahn <hahn@univention.de>
-
由 Philipp Hahn 提交于
uid_t and gid_t are opaque types, ranging from s32 to u32 to u64. Explicitly cast them to unsigned int for printing. Signed-off-by: NPhilipp Hahn <hahn@univention.de>
-
由 Philipp Hahn 提交于
The uid_t|gid_t values are explicitly casted to "unsigned long", but the printf() still used "%d", which is for signed values. Change the format to "%u". Signed-off-by: NPhilipp Hahn <hahn@univention.de>
-
由 Peter Krempa 提交于
Adds XML parsing and qemu commandline tests for the VirtIO RNG device support.
-
由 Peter Krempa 提交于
This patch adds a new capability bit QEMU_CAPS_OBJECT_RNG_EGD and code to support the egd backend for the VirtIO RNG device. The device is added by 3 qemu command line options: -chardev socket,id=charrng0,host=1.2.3.4,port=1234 (communication backend) -object rng-egd,chardev=charrng0,id=rng0 (RNG protocol client) -device virtio-rng-pci,rng=rng0,bus=pci.0,addr=0x4 (the RNG device)
-
由 Peter Krempa 提交于
This patch implements support for the virtio-rng-pci device and the rng-random backend in qemu. Two capabilities bits are added to track support for those: QEMU_CAPS_DEVICE_VIRTIO_RNG - for the device support and QEMU_CAPS_OBJECT_RNG_RANDOM - for the backend support. qemu is invoked with these additional parameters if the device is enabled: -object rng-random,id=rng0,filename=/test/phile (to add the backend) -device virtio-rng-pci,rng=rng0,bus=pci.0,addr=0x4 (to add the device)
-
由 Peter Krempa 提交于
-
由 Peter Krempa 提交于
This patch adds basic configuration support for the RNG device supporting the virtio model with the "random" and "egd" backend types as described in the schema in the previous patch.
-
由 Peter Krempa 提交于
This patch documents XML elements used for (basic) support of virtual RNG devices. In the devices section in the domain XML users may specify: For the default 'random' backend: <devices> <rng model='virtio'> <backend model='random'>/dev/urandom</backend> </rng> </devices> For the slightly more advanced EGD backend: <devices> <rng model='virtio'> <backend model='egd' type='udp'> <!-- this is a definition of a character device --> <source mode='bind' service='1234'/> <source mode='connect' host='1.2.3.4' service='1234'/> <!-- or other valid character device configuration --> </backend> </rng> </devices> For the planned random daemon/pool: <devices> <rng model='virtio'> <backend model='pool' pool='poolname'>class</backend> </rng> </devices> to enable the RNG device for guests.
-
由 Peter Krempa 提交于
This patch adds a fake switch statement to force the compiler to warn after a new device type was added. This should remind the contributor to add the new device also to this iterator function.
-
由 Gene Czarcinski 提交于
Originally, only a host name was used to associate a DHCPv6 request with a specific IPv6 address. Further testing demonstrates that this is an unreliable method and, instead, a client-id or DUID needs to be used. According to DHCPv6 standards, this id can be a duid-LLT, duid-LL, or duid-UUID even though dnsmasq will accept almost any text string. Although validity checking of a specified string makes sure it is hexadecimal notation with bytes separated by colons, there is no rigorous check to make sure it meets the standard. Documentation and schemas have been updated. Signed-off-by: NGene Czarcinski <gene@czarc.net> Signed-off-by: NLaine Stump <laine@laine.org>
-
由 Gene Czarcinski 提交于
Although in IPv4 one must pick either mac or name, either can be omitted. Similarly, for IPv6, the name can be optionally omitted. Signed-off-by: NGene Czarcinski <gene@czarc.net> Signed-off-by: NLaine Stump <laine@laine.org>
-