- 12 3月, 2010 3 次提交
-
-
由 Daniel Veillard 提交于
-
由 Chris Lalancette 提交于
Currently if you dump the core of a qemu guest with qemudDomainCoreDump, subsequent commands will hang up libvirtd. This is because qemudDomainCoreDump uses qemuDomainWaitForMigrationComplete, which expects the qemuDriverLock to be held when it's called. This patch does the simple thing and moves the qemuDriveUnlock to the end of the qemudDomainCoreDump so that the driver lock is held for the entirety of the call (as it is done in qemudDomainSave). We will probably want to make the lock more fine-grained than that in the future, but we can fix both qemudDomainCoreDump and qemudDomainSave at the same time. Signed-off-by: NChris Lalancette <clalance@redhat.com>
-
由 Chris Lalancette 提交于
The code to add job support into libvirtd caused a problem in qemudDomainSetVcpus. In particular, a qemuDomainObjEndJob() call was added at the end of the function, but a corresponding qemuDomainObjBeginJob() was not. Additionally, a call to qemuDomainObj{Enter,Exit}Monitor() was also missed in qemudDomainHotplugVcpus(). These missing calls conspired to cause a hang in the libvirtd process after the command was finished. Fix this by adding the missing calls. Signed-off-by: NChris Lalancette <clalance@redhat.com>
-
- 11 3月, 2010 8 次提交
-
-
由 Chris Lalancette 提交于
As previously discussed[1], this patch removes the qemudDomainSetMaxMemory() function, since it doesn't work. This means that instead of getting somewhat cryptic errors, you will now get: error: Unable to change MaxMemorySize error: this function is not supported by the hypervisor: virDomainSetMaxMemory Which describes the situation perfectly. [1] https://www.redhat.com/archives/libvir-list/2010-February/msg00928.htmlSigned-off-by: NChris Lalancette <clalance@redhat.com>
-
由 Chris Lalancette 提交于
When using the JSON monitor, qemuMonitorJSONExtractCPUInfo was returning 0 on success. Unfortunately, higher levels of the cpuinfo code expect that it returns the number of CPUs it found on success. This one-line patch fixes it so that it returns the correct number. This makes "virsh vcpuinfo <domain>" work when using the JSON monitor. Signed-off-by: NChris Lalancette <clalance@redhat.com>
-
由 Ed Swierk 提交于
* Allow devices without parent links to be created and set their parent to the root "computer" node
-
由 Eric Blake 提交于
* autogen.sh (curr_status): Also include hash of bootstrap.conf when checking for changes that require bootstrap rerun. * cfg.mk (_update_required): Likewise.
-
由 Eric Blake 提交于
Since cppi is not part of Fedora Core 12, the check is conditional: without cppi, running 'make syntax-check' merely warns: $ make sc_preprocessor_indentation preprocessor_indentation maint.mk: skipping test sc_preprocessor_indentation: cppi not installed * cfg.mk (sc_preprocessor_indentation): New syntax-check rule. (preprocessor_exempt): New macro, with first exemption.
-
由 Jim Meyering 提交于
This is a stop-gap measure to make autogen.sh rerun ./bootstrap, (required due to recent bootstrap.conf addition) while we prepare the fix to automatically detect the case of an updated modules list.
-
由 David Allan 提交于
* The udev driver didn't properly free resources that it allocates when setting up the 'computer' device in the error case.
-
由 Daniel Veillard 提交于
When the daemon libvirtd restarts, a connected virsh gets a SIGPIPE and dies. This change the behaviour to try to reconnect if the signal was received or command error indicated a connection or RPC failure. Note that the failing command is not restarted. * tools/virsh.c: catch SIGPIPE signals as well as connection related failures, add some automatic reconnection code and appropriate error messages.
-
- 10 3月, 2010 12 次提交
-
-
由 Chris Lalancette 提交于
As pointed out by eblake, I made a real hash of the nodeinfo code with commit aa2f6f96. This patch cleans it up: 1) Do more work at compile time instead of runtime (minor) 2) Properly handle the hex digits that come from /sys/devices/system/cpu/cpu*/topology/thread_siblings 3) Fix up some error paths that could cause SEGV 4) Used unsigned's for the cpu numbers (cpu -1 doesn't make any sense) Along with the recent patch from jdenemar to zero out the nodeinfo structure, I've re-tested this on the machines having the problems, and it seems to be good. Signed-off-by: NChris Lalancette <clalance@redhat.com>
-
由 Daniel Veillard 提交于
Having a single logrotate configuration file for all hypervisors did not work as logrotate would get confused if an hypervisor not supported on that platform was still listed. Simplest is to split the logrotate as separate per hypervisor files and change the spec file to only install the ones compiled in. * daemon/libvirtd.lxc.logrotate.in daemon/libvirtd.qemu.logrotate.in daemon/libvirtd.uml.logrotate.in: copy and split the original daemon/libvirtd.logrotate.in file * daemon/Makefile.am: update to support the different files and cleanup in sed suggested by Eric Blake * libvirt.spec.in: only install the relevant logrotate configs * daemon/.gitignore: update logrotate generated list
-
由 Eric Blake 提交于
* global: patch created by running: for f in $(git ls-files '*.[ch]') ; do cppi $f > $f.t && mv $f.t $f done
-
由 Eric Blake 提交于
With N_() in place, we can use it for a smaller file. * doc/api-extension/0008-Step-8-of-8-Add-virsh-support.patch: Replace all uses of gettext_noop with N_. * tools/virsh.c: Likewise, throughout the file.
-
由 Eric Blake 提交于
It is a bad idea to call gettext on an already-translated string. In cases where a string must be translated separately from where it is exposed to xgettext, the gettext manual recommends the idiom of N_() wrapping gettext_noop for marking the string. * src/internal.h (N_): Fix definition to match gettext manual. * tools/virsh.c: (cmdHelp, cmdList, cmdDomstate, cmdDominfo) (cmdVcpuinfo, vshUsage): Replace incorrect use of N_ with _. (vshCmddefHelp): Likewise. Mark C format strings appropriately.
-
由 Jim Meyering 提交于
* HACKING: Mark as read-only. Soon we'll generate it from... * docs/hacking.html.in: ... this file. More typo fixes.
-
由 Jiri Denemark 提交于
Signed-off-by: NJiri Denemark <jdenemar@redhat.com>
-
由 Jiri Denemark 提交于
The nodeinfo structure wasn't initialized in qemu driver and with the recent change in CPU topology parsing, old value of nodeinfo->sockets could be used and incremented giving totally bogus results. Let's just wipe the structure completely. Signed-off-by: NJiri Denemark <jdenemar@redhat.com>
-
由 Jim Meyering 提交于
* HACKING: More spelling/typo fixes.
-
由 Eric Blake 提交于
-
由 Eric Blake 提交于
* doc/hacking.html.in (preprocessor): New section to document recently-discussed style issues. Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Eric Blake 提交于
* docs/hacking.html.in (committers): Fix spelling and grammar.
-
- 09 3月, 2010 3 次提交
-
-
由 Laine Stump 提交于
A few more non-literal format strings in error log messages have crept in. Fix them in the standard way - turn the format string into "%s" with the original string as the arg.
-
由 Stefan Berger 提交于
* configure.ac: fix the header test used for macvtap availability detection
-
由 Soren Hansen 提交于
If a special cache strategy for a disk has been specified in a domain definition, but no driverName has been set, virDomainGetXMLDesc would not include the <driver> tag at all. * src/conf/domain_conf.c: make sure any <driver> tag setting is serialized if set.
-
- 08 3月, 2010 5 次提交
-
-
由 David Allan 提交于
* Added section on use of goto * Added missing content from HACKING document
-
由 Chris Lalancette 提交于
The current code for "nodeinfo" is pretty naive about socket and thread information. To determine the sockets, it just takes the number of cpus and divides by the number of cores. For the thread count, it always sets it to 1. With more recent Intel machines, however, hyperthreading is again an option, meaning that these heuristics no longer work and give bogus numbers. This patch goes through /sys to get the additional information so we properly report it. Note that I had to edit the tests not to report on socket and thread counts, since these are determined dynamically now. v2: As pointed out by Eric Blake, gnulib provides count-one-bits (which is LGPLv2+). Use it instead of a hand-coded popcnt. Signed-off-by: NChris Lalancette <clalance@redhat.com>
-
由 Adam Litke 提交于
When adding domainMemoryStats API support for the qemu driver, I didn't follow the locking rules exactly. The job condition must be held when executing monitor commands. This corrects the segfaults I was seeing when calling domainMemoryStats in a multi-threaded environment. * src/qemu/qemu_driver.c: in qemudDomainMemoryStats() add missing calls to qemuDomainObjBeginJob/qemuDomainObjEndJob
-
由 Laine Stump 提交于
doTunnelSendAll function (used by QEMU migration) uses a 64k buffer on the stack, which could be problematic. This patch replaces that with a buffer from the heap. While in the neighborhood, this patch also improves error reporting in the case that saferead fails - previously, virStreamAbort() was called (resetting errno) before reporting the error. It's been changed to report the error first. * src/qemu/qemu_driver.c: fix doTunnelSendAll() to use a malloc'ed buffer
-
由 Eric Blake 提交于
Prior to this patch, there was an inconsistent mix between GNU and C99. For consistency, and potential portability to other compilers, stick with the C99 vararg macro syntax. * src/conf/cpu_conf.c (virCPUReportError): Use C99 rather than GNU vararg macro syntax. * src/conf/domain_conf.c (virDomainReportError): Likewise. * src/conf/domain_event.c (eventReportError): Likewise. * src/conf/interface_conf.c (virInterfaceReportError): Likewise. * src/conf/network_conf.c (virNetworkReportError): Likewise. * src/conf/node_device_conf.h (virNodeDeviceReportError): Likewise. * src/conf/secret_conf.h (virSecretReportError): Likewise. * src/conf/storage_conf.h (virStorageReportError): Likewise. * src/esx/esx_device_monitor.c (ESX_ERROR): Use C99 rather than GNU vararg macro syntax. * src/esx/esx_driver.c (ESX_ERROR): Likewise. * src/esx/esx_interface_driver.c (ESX_ERROR): Likewise. * src/esx/esx_network_driver.c (ESX_ERROR): Likewise. * src/esx/esx_secret_driver.c (ESX_ERROR): Likewise. * src/esx/esx_storage_driver.c (ESX_ERROR): Likewise. * src/esx/esx_util.c (ESX_ERROR): Likewise. * src/esx/esx_vi.c (ESX_VI_ERROR): Likewise. * src/esx/esx_vi_methods.c (ESX_VI_ERROR): Likewise. * src/esx/esx_vi_types.c (ESX_VI_ERROR): Likewise. * src/esx/esx_vmx.c (ESX_ERROR): Likewise. * src/util/hostusb.c (usbReportError): Use C99 rather than GNU vararg macro syntax. * src/util/json.c (virJSONError): Likewise. * src/util/macvtap.c (ReportError): Likewise. * src/util/pci.c (pciReportError): Likewise. * src/util/stats_linux.c (virStatsError): Likewise. * src/util/util.c (virUtilError): Likewise. * src/util/xml.c (virXMLError): Likewise. * src/xen/proxy_internal.c (virProxyError): Use C99 rather than GNU vararg macro syntax. * src/xen/sexpr.c (virSexprError): Likewise. * src/xen/xen_driver.c (xenUnifiedError): Likewise. * src/xen/xen_hypervisor.c (virXenError): Likewise. * src/xen/xen_inotify.c (virXenInotifyError): Likewise. * src/xen/xend_internal.c (virXendError): Likewise. * src/xen/xm_internal.c (xenXMError): Likewise. * src/xen/xs_internal.c (virXenStoreError): Likewise. * src/cpu/cpu.h (virCPUReportError): Use C99 rather than GNU vararg macro syntax. * src/datatypes.c (virLibConnError): Likewise. * src/interface/netcf_driver.c (interfaceReportError): Likewise. * src/libvirt.c (virLibStreamError): Likewise. * src/lxc/lxc_conf.h (lxcError): Likewise. * src/network/bridge_driver.c (networkReportError): Likewise. * src/nodeinfo.c (nodeReportError): Likewise. * src/opennebula/one_conf.h (oneError): Likewise. * src/openvz/openvz_conf.h (openvzError): Likewise. * src/phyp/phyp_driver.c (PHYP_ERROR): Likewise. * src/qemu/qemu_conf.h (qemuReportError): Likewise. * src/remote/remote_driver.c (errorf): Likewise. * src/security/security_driver.h (virSecurityReportError): Likewise. * src/test/test_driver.c (testError): Likewise. * src/uml/uml_conf.h (umlReportError): Likewise. * src/vbox/vbox_driver.c (vboxError): Likewise. * src/vbox/vbox_tmpl.c (vboxError): Likewise.
-
- 06 3月, 2010 9 次提交
-
-
由 Jim Meyering 提交于
* src/util/ebtables.c (ebtablesAddRemoveRule): Avoid dead store to local, "s".
-
由 Jim Meyering 提交于
* src/conf/interface_conf.c (virInterfaceDefParseBond): Avoid dead stores to local, "node". Remove declaration, too.
-
由 Jim Meyering 提交于
* src/xen/xm_internal.c (xenXMDomainConfigParse): Avoid dead store to local, "data". Remove declaration, too.
-
由 Jim Meyering 提交于
* src/qemu/qemu_driver.c (qemudDomainAttachSCSIDisk): Handle the (theoretical) case of an empty controller list, so that clang does not think the subsequent dereference of "cont" would dereference an undefined variable (due to preceding loop not iterating even once).
-
由 Jim Meyering 提交于
* src/qemu/qemu_driver.c (qemudDomainRestore): A corrupt save file (in particular, a too-large header.xml_len value) would cause an unwarranted out-of-memory error. Do not trust the just-read header.xml_len. Instead, merely use that as a hint, and read/allocate up to that number of bytes from the file. Also verify that header.xml_len is positive; if it were negative, passing it to virFileReadLimFD could cause trouble.
-
由 Jim Meyering 提交于
to saferead_lim, which interprets it as a size_t. * src/util/util.c (virFileReadLimFD): Do not malfunction when maxlen < -1. Return -1,EINVAL in that case. Handle maxlen==0 in the same manner.
-
由 Jim Meyering 提交于
* src/xen/proxy_internal.c (xenProxyDomainDumpXML): An invalid packet could include a too-large "ans.len" value, which would make us allocate too much memory and then copy data from beyond the end of "ans", possibly evoking a segfault. Ensure that the value we use is no larger than the remaining portion of "ans". Also, change unnecessary memmove to memcpy (src and dest obviously do not overlap, so no need to use memmove). (xenProxyDomainGetOSType): Likewise. (xenProxyGetCapabilities): Likewise.
-
由 Jim Meyering 提交于
The code erroneously searched the entire "reply" for a comma, when its intent was to search only that portion after "balloon: actual=" * src/qemu/qemu_monitor_text.c (qemuMonitorTextGetMemoryStats): Search for "," only starting *after* the BALLOON_PREFIX string. Otherwise, we'd be more prone to false positives.
-
由 Daniel Veillard 提交于
* configure.ac libvirt.spec.in: update with new version * docs/news.html.in: add list of changes in 0.7.7 * po/*po*: updated spanish and russian localisations, rebuilt
-