- 24 5月, 2016 19 次提交
-
-
由 Pavel Hrdina 提交于
Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
-
由 Pavel Hrdina 提交于
Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
-
由 Pavel Hrdina 提交于
Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
-
由 Pavel Hrdina 提交于
-
由 Pavel Hrdina 提交于
Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
-
由 Pavel Hrdina 提交于
Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
-
由 Pavel Hrdina 提交于
Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
-
由 Pavel Hrdina 提交于
Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
-
由 Pavel Hrdina 提交于
Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
-
由 Maxim Nestratov 提交于
Below is backtraces of two deadlocked threads: thread #1: virDomainConfVMNWFilterTeardown virNWFilterTeardownFilter lock updateMutex <------------ _virNWFilterTeardownFilter try to lock interface <---------- thread #2: learnIPAddressThread lock interface <------- virNWFilterInstantiateFilterLate try to lock updateMutex <---------- The problem is fixed by unlocking interface before calling virNWFilterInstantiateFilterLate to avoid updateMutex and interface ordering deadlocks. Otherwise we are going to instantiate the filter while holding interface lock, which will try to lock updateMutex, and if some other thread instantiating a filter in parallel is holding updateMutex and is trying to lock interface, both will deadlock. Also it is safe to unlock interface before virNWFilterInstantiateFilterLate because learnIPAddressThread stopped capturing packets and applied necessary rules on the interface, while instantiating a new filter doesn't require a locked interface. Signed-off-by: NMaxim Nestratov <mnestratov@virtuozzo.com>
-
由 Pavel Hrdina 提交于
Fix the regex for excluding files for this syntax-rule. The rule "include/" will not work, because we are matching the whole line like this "^(...|include/|...)$ so we need to use "include/libvirt/libvirt.+". The second issue is that we are using only one '$' but there should be two of those at the end. The last small adjustment is to escape dots '.' so it match only dot. Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
-
由 Pavel Hrdina 提交于
We need to append GNUTLS_CFLAGS while building utils because virtcrypto is using it. This fixes build on freebsd where gnutuls is in /usr/local/include. Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
-
由 Pavel Hrdina 提交于
Test disk-drive-network-rbd-auth-AES depends on existence of gnutls_cipher_encrypt() function which was introduced in gnutls 2.10.0. On systems without this function we should skip this test. Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
-
由 Jovanka Gulicoska 提交于
Replace VIR_ERROR with virReportError and virReportSystemError
-
由 Jovanka Gulicoska 提交于
Replace VIR_ERROR with virReportError
-
由 Jovanka Gulicoska 提交于
Replace VIR_ERROR with virReportError
-
由 Jovanka Gulicoska 提交于
Replace VIR_ERROR with virReportError
-
由 Laine Stump 提交于
virDomainDefAddUSBController() does everything that the multiple lines of code were doing.
-
由 Mikhail Feoktistov 提交于
If try to stop VM or container which is already stopped than Virtuozzo 7 returns code PRL_ERR_INVALID_ACTION_REQUESTED. Error code PRL_ERR_DISP_VM_IS_NOT_STARTED is used in Virtuozzo 6
-
- 23 5月, 2016 11 次提交
-
-
由 Ján Tomko 提交于
Commit 5e54361c added virStoragePoolObjClearVols before refreshPool to prevent duplicate volume entries. However it is not needed here because we're not refreshing the pool yet, just checking for the existence of the refresh callback. The actual refresh is done via virStorageVolFDStreamCloseCb in virStorageVolPoolRefreshThread, which already calls virStoragePoolObjClearVols.
-
由 Ján Tomko 提交于
Before removal of QEMU_CAPS_DEVICE, its only usage was or'd with QEMU_CAPS_DEVICE. Now it's unused.
-
由 Ján Tomko 提交于
We support qemu version 0.12.0+, which has it.
-
由 Ján Tomko 提交于
We have been assuming its support if qemu supports -device, which all the supported versions do.
-
由 Ján Tomko 提交于
We have been always setting the capability on if qemu has QEMU_CAPS_DEVICE.
-
由 Ján Tomko 提交于
-
由 Ján Tomko 提交于
Read-only IDE disks are not supported, but the error is raised only when QEMU_CAPS_DRIVE_READONLY is set.
-
由 Ján Tomko 提交于
This test requests a read-only virtual FAT drive on the IDE bus. Read-only IDE drives are unsupported, but libvirt only displays the error if it has the QEMU_CAPS_DRIVE_READONLY capability. Read-write FAT drives are also unsupported.
-
由 Ján Tomko 提交于
Remove more checks that are no longer necessary.
-
由 Ján Tomko 提交于
Drop some checks that are no longer necessary as well as -usbdevice -pcidevice and -soundhw support.
- 22 5月, 2016 1 次提交
-
-
由 Mikhail Feoktistov 提交于
-
- 21 5月, 2016 6 次提交
-
-
由 Cole Robinson 提交于
This is an interesting test case since PCI isn't the default for aarch64.
-
由 Laine Stump 提交于
Rather than only assigning a PCI address when no address is given at all, also do it when the config says that the address type is 'pci', but it gives no address (virDeviceInfoPCIAddressWanted()). There are also several places after parsing but prior to address assignment where code previously expected that any info with address type='pci' would have a *valid* PCI address, which isn't always the case - now we check not only for type='pci', but also for a valid address (virDeviceInfoPCIAddressPresent()). The test case added in this patch was directly copied from Cole's patch titled: qemu: Wire up address type=pci auto_allocate
-
由 Laine Stump 提交于
Rather than only assigning a PCI address when no address is given at all, also do it when the config says that the address type is 'pci', but it gives no address.
-
由 Laine Stump 提交于
Prior to this, <address type='pci'/> wasn't allowed when parsing (domain+bus+slot+function needed to be a "valid" PCI address, meaning that at least one of domain/bus/slot had to be non-0), the RNG required bus to be specified, and if type was set to PCI when formatting, domain+bus+slot+function would always be output. This makes all the address attributes optional during parse and RNG validation, and suppresses domain+bus+slot+function if domain+bus+slot are all 0 (NB: if d+b+s are all 0, any value for function is nonsensical as that will never happen in the real world, and after the next patch we will always assign a real working address to any empty PCI address before it is ever output to anywhere). Note that explicitly setting all attributes to 0 is equivalent to setting none of them, which is okay, since 0000:00:00 is reserved in any PCI bus setup, and can't be used anyway.
-
由 Laine Stump 提交于
In order to allow <address type='pci'/> with no other attributes to mean "I want a PCI address, but any PCI address will do" (just as having no <address> at all usually indicates), we will need to change several places in the code from a simple "info->type == (or !=) VIR_DOMAIN_DEVICE_ADDRESS_TYPE_(PCI|NONE)" into something slightly more complex, this patch adds to new functions that take a virDomainDeviceInfoPtr and return true/false depending on 1) whether the current state of the info indicates that we "want" a PCI address for this device (virDeviceInfoPCIAddressWanted()) and 2) whether this device already has a valid PCI address (virDeviceInfoPCIAddressPresent()). Both of these functions required the simpler check for whether a pci address is "empty" (i.e. all of its attributes are 0, which can never happen in a real PCI address, since slot 0 of bus 0 of domain 0 is always reserved), so that function is also added.
-
由 Laine Stump 提交于
Also moves all the subordinate structs. This is necessary due to a new inline function that will be defined in device_conf.h, and also makes sense, because it is the *device* info that's in the struct. (Actually a lot more stuff from domain_conf.h could move to this newer file, but I didn't want to disturb any more than necessary).
-
- 20 5月, 2016 3 次提交
-
-
由 Michal Privoznik 提交于
I've encountered this error while trying out this feature on some systems: $ VIR_TEST_FILE_ACCESS=1 ./virhashtest \ libvirt.git/tests/.libs/lt-virhashtest: \ symbol lookup error: libvirt.git/tests/.libs/virtestmock.so: \ undefined symbol: libvirt_event_poll_purge_timeout_semaphore Problem is, linking just libvirt_utils to virmock.la is not enough. We might need to link libvirt_probes.lo too. Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
-
由 Michal Privoznik 提交于
There is a lot to explain, but I try to make it as short as possible. I'd start by pasting some parts of sys/stat.h: extern int stat (const char *__restrict __file, struct stat *__restrict __buf) __THROW __nonnull ((1, 2)); extern int __REDIRECT_NTH (stat, (const char *__restrict __file, struct stat *__restrict __buf), stat64) __nonnull ((1, 2)); __extern_inline int __NTH (stat (const char *__path, struct stat *__statbuf)) { return __xstat (_STAT_VER, __path, __statbuf); } Only one of these is effective at once, due to some usage of the mess we are dealing with in here. So, basically, while compiling or linking stat() in our code can be transformed into some other func. Or a dragon. Now, if you read stat(2) manpage, esp. "C library/kernel differences" section, you'll learn that glibc uses some tricks for older applications to work. I haven't gotten around actual code that does this, but based on my observations, if 'stat' symbol is found, glibc assumes it's dealing with ancient application. Unfortunately, it can be just ours stat coming from our mock. Therefore, calling stat() from a test will end up in our mock. But since glibc is not exposing the symbol anymore, our call of real_stat() will SIGSEGV immediately as the pointer to function is NULL. Therefore, we should expose only those symbols we know glibc has. Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
-
由 Michal Privoznik 提交于
It wasn't as great idea as I thought. Thing around stat() are more complicated than that. Therefore we need to revert 86d1705a plus drop use of the macro as introduced in later patches. Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
-