- 28 1月, 2012 16 次提交
-
-
由 Eric Blake 提交于
* src/libvirt.c (virDomainPMSuspendForDuration): Clarify usage.
-
由 KAMEZAWA Hiroyuki 提交于
add new API virDomainGetCPUStats() for getting cpu accounting information per real cpus which is used by a domain. The API is designed to allow future extensions for additional statistics. based on ideas by Lai Jiangshan and Eric Blake. * src/libvirt_public.syms: add API for LIBVIRT_0.9.10 * src/libvirt.c: define virDomainGetCPUStats() * include/libvirt/libvirt.h.in: add virDomainGetCPUStats() header * src/driver.h: add driver API * python/generator.py: add python API (as not implemented) Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Michal Privoznik 提交于
under new command "dompmsuspend"
-
由 Michal Privoznik 提交于
This API allows a domain to be put into one of S# ACPI states. Currently, S3 and S4 are supported. These states are shared with virNodeSuspendForDuration. However, for now we don't support any duration other than zero. The same apply for flags.
-
由 Zeeshan Ali (Khattak) 提交于
Autogeneration saves the day. Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Zeeshan Ali (Khattak) 提交于
Add a new function to allow changing of capacity of storage volumes. Plan out several flags, even if not all of them will be implemented up front. Expose the new command via 'virsh vol-resize'. Signed-off-by: NEric Blake <eblake@redhat.com>
-
由 Eric Blake 提交于
Otherwise, a failed test gives misleading output. * tests/commandtest.c (test13, test14, test16): Pass arguments in correct order.
-
由 Cole Robinson 提交于
Several not uncommon issues can be diagnosed through pkcheck output, like lack of/malfunctioning desktop agent, or lack of/malfunctioning polkit dbus agent.
-
由 Cole Robinson 提交于
And hook it up for policykit auth. This allows virt-manager to detect that the user clicked the policykit 'cancel' button and not throw an 'authentication failed' error message at the user.
-
由 Eric Blake 提交于
If yajl was not compiled in, we end up freeing an incoming parameter, which leads to a bogus free later on. Regression introduced in commit 6e769eba. * src/qemu/qemu_capabilities.c (qemuCapsParseHelpStr): Avoid alloc on failure path, which in turn fixes bogus free. Reported by Cole Robinson.
-
由 Eric Blake 提交于
Fix a build failure: virt-host-validate.c: In function 'main': virt-host-validate.c:82:5: error: implicit declaration of function 'setlocale' [-Werror=implicit-function-declaration] virt-host-validate.c:82:5: error: nested extern declaration of 'setlocale' [-Werror=nested-externs] virt-host-validate.c:82:20: error: 'LC_ALL' undeclared (first use in this function) * tools/virt-host-validate.c: Add <locale.h>. * .gitignore: Ignore built executable.
-
由 Eric Blake 提交于
Noticed this while reviewing Dan's patches. * src/util/xml.c (virXMLRewritFileData): Rename to virXMLRewriteFileData.
-
由 Daniel P. Berrange 提交于
The virEmitXMLWarning function should always have been in the xml.[hc] files, and should use virXML as its name prefix * src/util/util.c, src/util/util.h: Remove virEmitXMLWarning * src/util/xml.c, src/util/xml.h: Add virXMLEmitWarning
-
由 Daniel P. Berrange 提交于
Move the virMacAddrXXX functions out of util.[ch] and into a new dedicate file virmacaddr.[ch]
-
由 Daniel P. Berrange 提交于
Rename virFormatMacAddr, virGenerateMacAddr and virParseMacAddr to virMacAddrFormat, virMacAddrGenerate and virMacAddrParse respectively
-
由 Daniel P. Berrange 提交于
To assist people in verifying that their host is operating in an optimal manner, provide a 'virt-host-validate' command. For each type of hypervisor, it will check any pre-requisites, or other good recommendations and report what's working & what is not. eg # virt-host-validate QEMU: Checking for device /dev/kvm : FAIL (Check that the 'kvm-intel' or 'kvm-amd' modules are loaded & the BIOS has enabled virtualization) QEMU: Checking for device /dev/vhost : WARN (Load the 'vhost_net' module to improve performance of virtio networking) QEMU: Checking for device /dev/net/tun : PASS LXC: Checking for Linux >= 2.6.26 : PASS This warns people if they have vmx/svm, but don't have /dev/kvm. It also warns about missing /dev/vhost net.
-
- 27 1月, 2012 18 次提交
-
-
由 Paolo Bonzini 提交于
QEMU supports a bunch of CPUID features that are tied to the kvm CPUID nodes rather than the processor's. They are "kvmclock", "kvm_nopiodelay", "kvm_mmu", "kvm_asyncpf". These are not known to libvirt and their CPUID leaf might move if (for example) the Hyper-V extensions are enabled. Hence their handling would anyway require some special-casing. However, among these the most useful is kvmclock; an additional "property" of this feature is that a <timer> element is a better model than a CPUID feature. Although, creating part of the -cpu command-line from something other than the <cpu> XML element introduces some ugliness. Reviewed-by: NJiri Denemark <jdenemar@redhat.com> Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
-
由 Paolo Bonzini 提交于
Add kvmclock timer to documentation, schema and parsers. Keep the platform timer first since it is kind of special, and alphabetize the others when possible (i.e. when it does not change the ABI). Reviewed-by: NJiri Denemark <jdenemar@redhat.com> Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
-
由 Paolo Bonzini 提交于
Avoid creating an empty <cpu> element when the QEMU command-line simply specifies the default "-cpu qemu32" or "-cpu qemu64". This requires the previous patch, which lets us represent "-cpu qemu32" as <os arch='i686'> in the generated XML. Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
-
由 Paolo Bonzini 提交于
The qemu32 CPU model is chosen based on the <os arch=...> name when creating the QEMU command line for a 64-bit host. For the opposite transformation we can test the guest CPU model for the "lm" feature. If it is absent, def->os.arch needs to be corrected. Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
-
由 Paolo Bonzini 提交于
When running under KVM, the arch is usually set to i686 because the name of the emulator is not qemu-system-x86_64. Use the host arch instead. Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
-
由 Paolo Bonzini 提交于
Recently (or not so recently) QEMU added the kvm32 and kvm64 architectures, representing a least common denominator of all hosts that can run KVM. Add them to the machine map. Also, some features that TCG supports were added to qemu64. Add them to the cpu_map.xml whenever KVM is guaranteed to support those. We still have to leave some out, because they would not be available to guests running on older hosts. Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
-
由 Paolo Bonzini 提交于
Signed-off-by: NPaolo Bonzini <pbonzini@redhat.com>
-
由 Eric Blake 提交于
The qemu developers have made it clear that modern qemu will no longer guarantee human monitor command stability; furthermore, some features, such as async events, are only supported via qmp. If we are compiled without support for handling JSON, we cannot expect to sanely interact with modern qemu. However, things must continue to build on RHEL 5, where qemu is stuck at 0.10, and where yajl is not available. Another benefit of this patch: future additions of new monitor commands need only focus on qemu_monitor_json.c, instead of also wasting time with qemu_monitor_text.c. * src/qemu/qemu_capabilities.c (qemuCapsComputeCmdFlags): Report error if yajl is missing but qemu requires qmp. (qemuCapsParseHelpStr): Propagate error. (qemuCapsExtractVersionInfo): Update caller. * tests/qemuhelptest.c (testHelpStrParsing): Likewise.
-
由 Eric Blake 提交于
I'm getting tired of remembering to backport RHEL-specific patches when building upstream libvirt on RHEL 6.x or CentOS. All the affected versions of RHEL qemu-kvm have backported enough patches to a) make JSON useful, and b) modify the -help text to mention libvirt as the preferred interface; which means this string in the help output is a reliable indicator that we can outsmart a strict version check, even when upstream qemu 0.12 lacked the needed features. * src/qemu/qemu_capabilities.c (qemuCapsComputeCmdFlags): Recognize particular help string present when enough features were backported to be worth using JSON. * tests/qemuhelptest.c (mymain): Update tests accordingly.
-
由 Stefan Berger 提交于
Compare two filters' XML for equality and only rebuild/instantiate the new filter if the new and current filters are found to be different. This improves performance during an update of a filter with no obvious change or the reloading of filters during a 'kill -SIGHUP'
-
由 Stefan Berger 提交于
Introduce a function that rebuilds all running VMs' filters. Call this function when reloading the nwfilter driver. This addresses a problem introduced by the 2nd patch that typically causes no filters to be reinstantiate anymore upon driver reload since their XML has not changed. Yet the current behavior is that upon a SIGHUP all filters get reinstantiated.
-
由 Jiri Denemark 提交于
QEMU always sends details about all available block devices as an answer for "info block"/"query-block" command. On the other hand, our qemuMonitorGetBlockInfo was made for a single block devices queries only. Thus, when asking for multiple devices, we asked qemu multiple times to always get the same answer from which different parts were filtered. This patch makes qemuMonitorGetBlockInfo return a hash table of all block devices, which may later be used for getting details about specific devices.
-
由 Jiri Denemark 提交于
Without this, virt-aa-helper would segfault in -c or -r commands.
-
由 Marcelo Cerri 提交于
Added a new field "vm-pid" to the VIRT_CONTROL audit record. This information is useful to correlated another audit events to the events generated by libvirt.
-
由 Eric Blake 提交于
Convert daemon code to handle 64-bit pid_t (even though at the moment, it is not compiled on mingw). * daemon/remote.c (remoteDispatchAuthList) (remoteDispatchAuthPolkit): Print pid_t via %lld.
-
由 Eric Blake 提交于
Using snprintf to build up argv seems archaic. * daemon/remote.c (remoteDispatchAuthPolkit): Modernize command call.
-
由 Eric Blake 提交于
On RHEL5, I got: util/virrandom.c:66: warning: nested extern declaration of '_gl_verify_function66' [-Wnested-externs] The fix is to hoist the verify earlier. Also some other hodge-podge fixes I noticed while reviewing Dan's recent series. * .gitignore: Ignore new test. * src/util/cgroup.c: Bump copyright year. * src/util/virhash.c: Fix typo in description. * src/util/virrandom.c (virRandomBits): Mark doc comment, and hoist assert to silence older gcc.
-
由 Michal Privoznik 提交于
Some files are using uint32_t or int64_t without including stdint.h which defines them. Fix this.
-
- 26 1月, 2012 6 次提交
-
-
由 Daniel P. Berrange 提交于
* src/libvirt_public.syms: Death to tabs * cfg.mk: Check .syms files for tabs
-
由 Daniel P. Berrange 提交于
-
由 Daniel P. Berrange 提交于
Recent discussions have illustrated the potential for DOS attacks with the hash table implementations used by most languages and libraries. https://lwn.net/Articles/474912/ libvirt has an internal hash table impl, and uses hash tables for a variety of purposes. The hash key generation code is pretty simple and thus not strongly collision resistant. This patch replaces the current libvirt hash key generator with the (public domain) Murmurhash3 code. In addition every hash table now gets a random seed value which is used to perturb the hashing code. This should make it impossible to mount any practical attack against libvirt hashing code. * bootstrap.conf: Import bitrotate module * src/Makefile.am: Add virhashcode.[ch] * src/util/util.c: Make virRandom() return a fixed 32 bit integer value. * src/util/hash.c, src/util/hash.h, src/util/cgroup.c: Replace hash code generation with a call to virHashCodeGen() * src/util/virhashcode.h, src/util/virhashcode.c: Add a new virHashCodeGen() API using the Murmurhash3 algorithm.
-
由 Daniel P. Berrange 提交于
In preparation for the patch to include Murmurhash3, which introduces a virhashcode.h and virhashcode.c files, rename the existing hash.h and hash.c to virhash.h and virhash.c respectively.
-
由 Daniel P. Berrange 提交于
In preparation for conversion over to use the Murmurhash3 algorithm, convert various virHash APIs to use size_t or uint32 for their return values/parameters, instead of the variable size 'unsigned long' or 'int' types
-
由 Daniel P. Berrange 提交于
The old virRandom() API was not generating good random numbers. Replace it with a new API virRandomBits which instead of being told the upper limit, gets told the number of bits of randomness required. * src/util/virrandom.c, src/util/virrandom.h: Add virRandomBits, and move virRandomInitialize * src/util/util.h, src/util/util.c: Delete virRandom and virRandomInitialize * src/libvirt.c, src/security/security_selinux.c, src/test/test_driver.c, src/util/iohelper.c: Update for changes from virRandom to virRandomBits * src/storage/storage_backend_iscsi.c: Remove bogus call to virRandomInitialize & convert to virRandomBits
-