- 16 1月, 2010 3 次提交
-
-
由 Daniel P. Berrange 提交于
Add the virDomainDeviceAddress information to the sound, video and watchdog devices. This means all of them gain the new XML element <address .... /> This brings them upto par with disk/net/hostdev devices which already have address info * src/conf/domain_conf.h: Add virDomainDeviceAddress to sound, video & watchdog device struts. * src/conf/domain_conf.c: Hook up parsing/formatting for virDomainDeviceAddress in sound, video & watchdog devices * docs/schemas/domain.rng: Associate device address info with sound, video & watchdog
-
由 Daniel P. Berrange 提交于
Introduce a new structure struct _virDomainDeviceDriveAddress { unsigned int controller; unsigned int bus; unsigned int unit; }; and plug that into virDomainDeviceAddress and generates XML that looks like <address type='drive' controller='1' bus='0' unit='5'/> This syntax will be used by the QEMU driver to explicitly control how drives are attached to the bus * src/conf/domain_conf.h, src/conf/domain_conf.c: Parsing and formatting of drive addresses * docs/schemas/domain.rng: Define new address format for drives
-
由 Daniel P. Berrange 提交于
All guest devices now use a common device address structure summarized by: enum virDomainDeviceAddressType { VIR_DOMAIN_DEVICE_ADDRESS_TYPE_NONE, VIR_DOMAIN_DEVICE_ADDRESS_TYPE_PCI, }; struct _virDomainDevicePCIAddress { unsigned int domain; unsigned int bus; unsigned int slot; unsigned int function; }; struct _virDomainDeviceInfo { int type; union { virDomainDevicePCIAddress pci; } addr; }; This replaces the anonymous structs in Disk/Net/Hostdev data structures. Where available, the address is *always* printed in the XML file, instead of being hidden in the internal state file. <address type='pci' domain='0x0000' bus='0x1e' slot='0x07' function='0x0'/> The structure definition is based on Wolfgang Mauerer's disk controller patch series. * docs/schemas/domain.rng: Define the <address> syntax and associate it with disk/net/hostdev devices * src/conf/domain_conf.h, src/conf/domain_conf.c, src/libvirt_private.syms: APIs for parsing/formatting address information. Also remove the QEMU specific 'pci_addr' attributes * src/qemu/qemu_driver.c: Replace use of 'pci_addr' attrs with new standardized format.
-
- 15 1月, 2010 3 次提交
-
-
由 Matthias Bolte 提交于
Commit 5073aa99 added an additional '}' to a case block that messed up the block structure of the get_files function.
-
由 Jim Meyering 提交于
* src/xen/xend_internal.c (wr_sync): Correct the diagnostic.
-
由 Matthias Bolte 提交于
-
- 14 1月, 2010 3 次提交
-
-
由 Cole Robinson 提交于
With the introduction virDispatchError, hook function errors are never sent through the error callback, so users will never see these messages. Fix this by calling virDispatchError after hook failure.
-
由 Cole Robinson 提交于
Based off how QEMU does it, look through /sys/bus/usb/devices/* for matching vendor:product info, and if found, use info from the surrounding files to build the device's /dev/bus/usb path. This fixes USB device assignment by vendor:product when running qemu as non-root (well, it should, but for some reason I couldn't reproduce the failure people are seeing in [1], but it appears to work properly) [1] https://bugzilla.redhat.com/show_bug.cgi?id=542450
-
由 Cole Robinson 提交于
-
- 13 1月, 2010 5 次提交
-
-
由 Cole Robinson 提交于
We are setting the same property two different ways without free'ing in between. Just drop the second assignment.
-
由 Cole Robinson 提交于
There are quite a few differences between how udev exposes legacy and USB floppy devs, but this patch takes care of both variants.
-
由 Cole Robinson 提交于
udev doesn't prefix USB product/vendor info with '0x', so the strtol conversions were wrong for the product field (vendor already set the correct base). Make the change for PCI product/vendor as well to be safe. This fixes USB device assignment via virt-manager.
-
由 Cole Robinson 提交于
This allows debug statements and raised errors in hook functions to actually be logged somewhere (stderr). Users can enable debugging in the daemon and now see more info in /var/log/libvirt/...
-
由 Jim Fehlig 提交于
Upstream xen has changed parameters to the migration operation several times over the past 18 months. Changeset 17553 removed the resouce parameter, Changesets 17709, 17753, and 20326 added ssl, node, and change_home_server parameters respectively. Fortunately, testing has revealed that xend will fail the operation if a parameter is missing but happily honor it if unknown parameters are provided. Thus all currently supported parameters can be provided, satisfying current xend but not regressing older versions.
-
- 12 1月, 2010 6 次提交
-
-
由 Cole Robinson 提交于
-
由 Cole Robinson 提交于
-
由 Cole Robinson 提交于
This way we won't squash the original error report in MigratePerform, as is done for P2P and Tunneled migration.
-
由 Cole Robinson 提交于
Can be used to re-set an old error, which may have been squashed by other functions (like cleanup routines). Will be used in subsequent patches
-
由 Daniel P. Berrange 提交于
The virRaiseErrorFull() may invoke the error handler callback functions an application has registered. This is not good because the connection object may not be available at this point, and the caller may be holding locks. This creates a problem if the error handler calls back into libvirt. The solutuon is to move invocation of the handler into the final cleanup code in the public API entry points, where it is guarenteed to have safe state. * src/libvirt.c: Invoke virDispatchError() in all error paths * src/util/virterror.c: Remove virSetConnError/virSetGlobalError, replacing with virDispatchError(). Move invocation of the error callbacks into virDispatchError() instead of the virRaiseErrorFull function which is not in a safe context
-
由 Matthias Bolte 提交于
qemudWaitForMonitor calls qemudReadLogOutput with qemudFindCharDevicePTYs as callback. qemudFindCharDevicePTYs calls qemudExtractTTYPath to assign a string to chr->data.file.path. Afterwards qemudWaitForMonitor may call qemudFindCharDevicePTYsMonitor that overwrites chr->data.file.path without freeing the old value. This results in leaking the memory allocated by qemudExtractTTYPath. Report an OOM error if the strdup in qemudFindCharDevicePTYsMonitor fails.
-
- 11 1月, 2010 2 次提交
-
-
由 Guido Günther 提交于
older kernels such as 2.6.26 have it there.
-
由 Laine Stump 提交于
Only use pseudo-random generator for uuid if using /dev/random fails. * src/util/uuid.c: The original code. would only print the warning message if using /dev/random failed, but would still go ahead and call virUUIDGeneratePseudoRandomBytes in all cases anyway.
-
- 09 1月, 2010 5 次提交
-
-
由 Jim Meyering 提交于
* src/xen/proxy_internal.c (xenProxyCommand): Mark "request" as an always-non-NULL parameter.
-
由 Jim Meyering 提交于
* src/xen/proxy_internal.c (xenProxyCommand): "res" is known to be non-NULL at that point, so remove the "res == NULL" guard.
-
由 Matthias Bolte 提交于
Currently only the faultcode and faultstring are deserialized, the detail part is ignored. The implementation of many new SOAP types would be necessary to deserialize the detail part correctly. As an intermediate solution the raw response is dumped to the debug log.
-
由 Matthias Bolte 提交于
-
由 Matthias Bolte 提交于
-
- 08 1月, 2010 2 次提交
-
-
由 Daniel Veillard 提交于
The -mem-prealloc flag should be used when using large pages This ensures qemu tries to allocate all required memory immediately, rather than when first used. The latter mode will crash qemu if hugepages aren't available when accessed, while the former should gracefully fallback to non-hugepages. * src/qemu/qemu_conf.c: add -mem-prealloc flag to qemu command line when using large pages
-
由 Jim Fehlig 提交于
xen-unstable c/s 20685 changed the domctl interface, adding a field to xen_domctl_getdomaininfo structure. This additional field causes stack corruption in libvirt. xen-unstable c/s 20711 rightly bumped the domctl interface version so it is at least possible to handle the new field. This change accounts for shr_pages field added to xen_domctl_getdomaininfo structure.
-
- 07 1月, 2010 11 次提交
-
-
由 Jim Meyering 提交于
* src/network/bridge_driver.c (networkBuildDnsmasqArgv): Correct test for NULL *argv.
-
由 Matthias Bolte 提交于
The MAC addresses with 00:50:56 prefix are split into several ranges: 00:50:56:00:00:00 - 00:50:56:3f:ff:ff 'static' range (manually assigned) 00:50:56:80:00:00 - 00:50:56:bf:ff:ff 'vpx' range (assigned by a VI Client) Erroneously the 'vpx' range was assumed to be larger and to occupy the remaining addresses of the 00:50:56 prefix that are not part of the 'static' range. 00:50:56 was used as prefix for generated MAC addresses, this is not possible anymore, because there are gaps in the allowed ranges. Therefore, change the prefix to 00:0c:29 which is the prefix for auto generated MAC addresses anyway. Allow arbitrary MAC addresses to be used and set the checkMACAddress VMX option to false in case the MAC address doesn't fall into any predefined range. * docs/drvesx.html.in: update website accordingly * src/esx/esx_driver.c: set the auto generation prefix to 00:0c:29 * src/esx/esx_vmx.c: fix MAC address range handling and allow arbitrary MAC addresses * tests/vmx2xml*, tests/xml2vmx*: add some basic MAC address range tests
-
由 Matthias Bolte 提交于
-
由 Matthias Bolte 提交于
The data passed to the callback is not guaranteed to be zero terminated, take care of that by coping the data and adding a zero terminator. Also dump the data for other types than CURLINFO_TEXT. Set CURLOPT_VERBOSE to 1 so the debug callback is called when enabled.
-
由 Matthias Bolte 提交于
-
由 Matthias Bolte 提交于
A domain with virtualHW version 4 is allowed on an ESX 4.0 server. If a domain is migrated from an ESX 3.5 server to an ESX 4.0 server then the virtualHW version stays the same. So a ESX 4.0 server can host domains with virtualHW version 4.
-
由 Matthias Bolte 提交于
This invalid free results in heap corruption. Some symptoms I saw because of this were libvirtd crashing and virt-manager hanging while trying to enumerate devices.
-
由 Jim Meyering 提交于
* src/xen/xend_internal.c (xenDaemonOpen_unix): Do not dereference a NULL "conn". Move first deref to follow the "conn == NULL" test.
-
由 Adam Litke 提交于
The behavior for the qemu balloon device has changed. Formerly, a virtio balloon device was provided by default. Now, '-balloon virtio' must be specified on the command line to enable it. This patch causes libvirt to add '-balloon virtio' to the command line whenever the -balloon option is available. * src/qemu/qemu_conf.c src/qemu/qemu_conf.h: check for the new flag and add "-baloon vitio" to qemu command when needed * tests/qemuhelptest.c: add the new flag for detection
-
由 David Allan 提交于
This patch removes the call to vol update after the volume build completes. The update call is currently meaningless anyway because the vol build is passed a copy of the definition, so the update result is thrown away. More importantly, if the user specified a selinux label for the volume, the update call results in a double free of the label * src/storage/storage_backend_fs.c: remove the update call
-
由 Matthew Booth 提交于
This change makes the 'info chardev' parser ignore any trailing whitespace on a line. This fixes a specific problem handling a '\r\n' line ending. * src/qemu/qemu_monitor_text.c: Ignore trailing whitespace in 'info chardev' output.
-