- 16 4月, 2013 2 次提交
-
-
由 Daniel P. Berrange 提交于
The second param of virNetlinkCommand should be struct nlmsghdr, not unsigned char. Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Daniel P. Berrange 提交于
Win32 does not like undefined symbols, so define an empty virThreadCancel impl. Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
- 15 4月, 2013 4 次提交
-
-
由 Osier Yang 提交于
Though they are the same thing, mixed use of them is uncomfortable. "unsigned" is used a lot in old codes, this just tries to change the ones in utils.
-
由 Daniel P. Berrange 提交于
If libvirt makes any gcry_control() calls, then this prevents gnutls for doing any initialization. As such we must take care to do full initialization of libcrypt on a par with what gnutls would have done. In particular we must disable "sec mem" for cases where the user does not have mlock() permission. We also skip our init of libgcrypt if something else (ie the app using libvirt) has beaten us to it. https://bugzilla.redhat.com/show_bug.cgi?id=951630Signed-off-by: NDaniel P. Berrange <berrange@redhat.com>
-
由 Peter Krempa 提交于
Report the errors as: Domain not found: no domain with matching uuid '41414141-4141-4141-4141-414141414141' (crashtest) instead of: Domain not found: no domain with matching uuid '41414141-4141-4141-4141-414141414141'
-
由 Peter Krempa 提交于
Use the helper to lookup the domain object in the remaining places. This patch also fixes error reporting when the domain was not found in several functions that were printing the raw UUID buffer instead of the formatted string. The offending functions were: qemuDomainGetInterfaceParameters qemuDomainSetInterfaceParameters qemuGetSchedulerParametersFlags qemuSetSchedulerParametersFlags qemuDomainGetNumaParameters qemuDomainSetNumaParameters qemuDomainGetMemoryParameters qemuDomainSetMemoryParameters qemuDomainGetBlkioParameters qemuDomainSetBlkioParameters qemuDomainGetCPUStats
-
- 13 4月, 2013 14 次提交
-
-
由 Osier Yang 提交于
Pushed under trivial rule
-
由 Osier Yang 提交于
-
由 Osier Yang 提交于
-
由 Osier Yang 提交于
-
由 Osier Yang 提交于
-
由 Stefan Berger 提交于
For TPM passthrough device support create command line parameters like: -tpmdev passthrough,id=tpm-tpm0,path=/dev/tpm0,cancel-path=/sys/class/misc/tpm0/device/cancel -device tpm-tis,tpmdev=tpm-tpm0,id=tpm0 Signed-off-by: NStefan Berger <stefanb@linux.vnet.ibm.com> Reviewed-by: NCorey Bryant <coreyb@linux.vnet.ibm.com> Tested-by: NCorey Bryant <coreyb@linux.vnet.ibm.com>
-
由 Stefan Berger 提交于
Some refactoring for virDomainChrSourceDef type of devices so we can use common code. Signed-off-by: NStefan Berger <stefanb@linux.vnet.ibm.com> Reviewed-by: NCorey Bryant <coreyb@linux.vnet.ibm.com> Tested-by: NCorey Bryant <coreyb@linux.vnet.ibm.com>
-
由 Stefan Berger 提交于
When a VM with a TPM passthrough device is started, the audit daemon logs the following type of message: type=VIRT_RESOURCE msg=audit(1365170222.460:3378): pid=16382 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:virtd_t:s0-s0:c0.c1023 msg='virt=kvm resrc=dev reason=start vm="TPM-PT" uuid=a4d7cd22-da89-3094-6212-079a48a309a1 device="/dev/tpm0" exe="/usr/sbin/libvirtd" hostname=? addr=? terminal=? res=success' Signed-off-by: NStefan Berger <stefanb@linux.vnet.ibm.com> Reviewed-by: NCorey Bryant <coreyb@linux.vnet.ibm.com> Tested-by: NCorey Bryant <coreyb@linux.vnet.ibm.com>
-
由 Stefan Berger 提交于
Signed-off-by: NStefan Berger <stefanb@linux.vnet.ibm.com> Reviewed-by: NCorey Bryant <coreyb@linux.vnet.ibm.com> Tested-by: NCorey Bryant <coreyb@linux.vnet.ibm.com>
-
由 Stefan Berger 提交于
Signed-off-by: NStefan Berger <stefanb@linux.vnet.ibm.com> Reviewed-by: NCorey Bryant <coreyb@linux.vnet.ibm.com> Tested-by: NCorey Bryant <coreyb@linux.vnet.ibm.com>
-
由 Stefan Berger 提交于
Parse the domain XML with TPM passthrough support. The TPM passthrough XML may look like this: <tpm model='tpm-tis'> <backend type='passthrough'> <device path='/dev/tpm0'/> </backend> </tpm> Signed-off-by: NStefan Berger <stefanb@linux.vnet.ibm.com> Reviewed-by: NCorey Bryant <coreyb@linux.vnet.ibm.com> Tested-by: NCorey Bryant <coreyb@linux.vnet.ibm.com>
-
由 Stefan Berger 提交于
Implement helper function to create the TPM's sysfs cancel file. Signed-off-by: NStefan Berger <stefanb@linux.vnet.ibm.com> Reviewed-by: NCorey Bryant <coreyb@linux.vnet.ibm.com> Tested-by: NCorey Bryant <coreyb@linux.vnet.ibm.com>
-
由 Stefan Berger 提交于
Signed-off-by: NStefan Berger <stefanb@linux.vnet.ibm.com> Reviewed-by: NCorey Bryant <coreyb@linux.vnet.ibm.com> Tested-by: NCorey Bryant <coreyb@linux.vnet.ibm.com>
-
由 Stefan Berger 提交于
Probe for QEMU's QMP TPM support by querying the lists of supported TPM models (query-tpm-models) and backend types (query-tpm-types). The setting of the capability flags following the strings returned from the commands above is only provided in the patch where domain_conf.c gets TPM support due to dependencies on functions only introduced there. Signed-off-by: NStefan Berger <stefanb@linux.vnet.ibm.com> Reviewed-by: NCorey Bryant <coreyb@linux.vnet.ibm.com> Tested-by: NCorey Bryant <coreyb@linux.vnet.ibm.com>
-
- 12 4月, 2013 3 次提交
-
-
由 Peter Krempa 提交于
This patch adds the ability to configure non-contiguous boot orders on boot devices. This allows unplugging devices that have boot order specified without breaking migration. The new code now uses a slightly less memory efficient approach to store the boot order fields in a hashtable instead of a bitmap.
-
由 Li Zhang 提交于
To avoid the collision for creating USB controllers in machine->init() and -device xx command line, it needs to set usb=off to avoid one USB controller created in machine->init(). So that libvirt can use -device or -usb to create USB controller sucessfully. So QEMU_CAPS_MACHINE_USB_OPT capability is added, and it is for QEMU v1.3.0 onwards which supports USB option. Signed-off-by: NLi Zhang <zhlcindy@linux.vnet.ibm.com>
-
由 Jiri Denemark 提交于
When migrating a domain with disk images stored locally (and using storage migration), we should not complain about unsafe migration no matter what cache policy is used for that disk.
-
- 11 4月, 2013 15 次提交
-
-
由 Peter Krempa 提交于
Instead of always using HMP use the QMP send-key command introduced in qemu 1.3.
-
由 Michal Privoznik 提交于
https://bugzilla.redhat.com/show_bug.cgi?id=920441 Currently, we are discarding listen attribute from qemu cookie even though we strive to gather it. This result in not so cool bug: if user have different networks, one for management/migration, and one for VNC/SPICE we pass incorrect host to the qemu in client_migrate_info. What we actually pass is remote hostname, while we should be passing remote listen address. It doesn't matter as long as these two are the same, but they don't need necessary to be like that.
-
由 Ján Tomko 提交于
If the path part of connection URI is not present, cfg is used unitialized. https://bugzilla.redhat.com/show_bug.cgi?id=950855
-
由 Ján Tomko 提交于
-
由 Osier Yang 提交于
-
由 Osier Yang 提交于
-
由 Osier Yang 提交于
-
由 Osier Yang 提交于
-
由 Osier Yang 提交于
-
由 Osier Yang 提交于
-
由 Osier Yang 提交于
-
由 Osier Yang 提交于
-
由 Osier Yang 提交于
Members of struct virPCIDevice are changed together.
-
由 Osier Yang 提交于
-
由 Guannan Ren 提交于
==5306== 8 bytes in 1 blocks are definitely lost in loss record 24 of 277 ==5306== at 0x4C28B2F: calloc (vg_replace_malloc.c:593) ==5306== by 0x5293CAF: virAllocN (viralloc.c:152) ==5306== by 0x52DFEAE: virXPathNodeSet (virxml.c:611) ==5306== by 0x5313DD9: virNetworkDefParseXML (network_conf.c:1408) ==5306== by 0x53170F6: virNetworkObjUpdateParseFile (network_conf.c:2031) ==5306== by 0x131DA63C: networkStartup (bridge_driver.c:279) ==5306== by 0x53481DF: virStateInitialize (libvirt.c:822) ==5306== by 0x40DF44: daemonRunStateInit (libvirtd.c:877) ==5306== by 0x52D2FF5: virThreadHelper (virthreadpthread.c:161) ==5306== by 0x5D00C52: start_thread (in /usr/lib64/libpthread-2.17.so) ==5306== by 0x6410ECC: clone (in /usr/lib64/libc-2.17.so)
-
- 10 4月, 2013 2 次提交
-
-
由 Peter Krempa 提交于
This patch fixes crash of the daemon that happens due to the following race condition: Let's have two threads in the libvirtd daemon's qemu driver: A - thread executing undefine on the same domain B - thread executing a API call to get information about a domain Assume following serialization of operations done by the threads: 1) A has the lock on the domain object and is executing some code prior to virDomainObjListRemove() 2) B takes the lock on the domain object list, looks up the domain object pointer and blocks in the attempt to lock the domain object as A is holding the lock 3) A reaches virDomainObjListRemove() and unlocks the lock on the domain object 4) A blocks on the attempt to get the domain list lock 5) B is able to lock the domain object now and unlocks the domain list 6) A is now able to lock the domain list, and sheds the last reference on the domain object, this triggers the freeing function. 6) B starts executing the code on the pointer that is being freed 7) The libvirtd daemon crashes while attempting to access invalid pointer in thread B. This patch fixes the race by acquiring a reference on the domain object before unlocking it in virDomainObjListRemove() and re-locks the object prior to removing and freeing it. This ensures that no thread holds a lock on the domain object at the time it is removed from the list, and that doing a list lookup will never find a domain that is about to vanish. This is a minimal fix of the problem, but a better solution will be to switch to full reference counting for domain objects.
-
由 Laine Stump 提交于
Commit 9a3ff01d (which was ACKed at the end of January, but for some reason didn't get pushed until during the 1.0.4 freeze) fixed the logic in virPCIGetVirtualFunctions(). Unfortunately, a typo in the fix (replacing VIR_REALLOC_N with VIR_ALLOC_N during code movement) caused not only a memory leak, but also resulted in most of the elements of the result array being replaced with NULL. virNetDevGetVirtualFunctions() assumed (and I think rightly so) that virPCIGetVirtualFunctions() wouldn't return any NULL elements in the array, so it ended up segfaulting. This was found when attempting to use a virtual network with an auto-created pool of SRIOV VFs, e.g.: <forward mode='hostdev' managed='yes'> <pf dev='eth4'/> </forward> (the pool of PCI addresses is discovered by calling virNetDevGetVirtualFunctions() on the PF dev).
-