- 01 3月, 2016 1 次提交
-
-
由 Nikolay Shirokovskiy 提交于
Signed-off-by: NNikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
-
- 12 2月, 2016 1 次提交
-
-
由 Mikhail Feoktistov 提交于
Race condition: User calls defineXML to create new instance. The main thread from vzDomainDefineXMLFlags() creates new instance by prlsdkCreateVm. Then this thread calls prlsdkAddDomain to add new domain to domains list. The second thread receives notification from hypervisor that new VM was created. It calls prlsdkHandleVmAddedEvent() and also tries to add new domain to domains list. These two threads call virDomainObjListFindByUUID() from prlsdkAddDomain() and don't find new domain. So they add two domains with the same uuid to domains list. This fix splits logic of prlsdkAddDomain() into two functions. 1. vzNewDomain() creates new empty domain in domains list with the specific uuid. 2. prlsdkLoadDomain() add data from VM to domain object. New algorithm for creating an instance: In vzDomainDefineXMLFlags() we add new domain to domain list by calling vzNewDomain() and only after that we call CreateVm() to create VM. It means that we "reserve" domain object with the specific uuid. After creation of new VM we add info from this VM to reserved domain object by calling prlsdkLoadDomain(). Before this patch prlsdkLoadDomain() worked in 2 different cases: 1. It creates and initializes new domain. Then updates it from sdk handle. 2. It updates existed domain from sdk handle. In this patch we remove code which creates new domain from LoadDomain() and move it to vzNewDomain(). Now prlsdkLoadDomain() only updates domain from skd handle. In notification handler prlsdkHandleVmAddedEvent() we check the existence of a domain and if it doesn't exist we add new domain by calling vzNewDomain() and load info from sdk handle via prlsdkLoadDomain().
-
- 04 2月, 2016 1 次提交
-
-
由 Joao Martins 提交于
And use the newly added caps->host.netprefix (if it exists) for interface names that match the autogenerated target names. Signed-off-by: NJoao Martins <joao.m.martins@oracle.com>
-
- 11 1月, 2016 1 次提交
-
-
由 Martin Kletzander 提交于
This way both Domain and Device PostParse functions can act based on the flags. Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
-
- 24 12月, 2015 2 次提交
-
-
由 Maxim Nestratov 提交于
In case of prlsdkLoadDomains fails, vzOpenDefault should clear connection privateData pointer every time its memory is actually freed. Also it is not necessary to call vzConnectClose if a call to vzOpenDefault fails, because they both make cleanup of connection privateData. Signed-off-by: NMaxim Nestratov <mnestratov@virtuozzo.com>
-
由 Maxim Nestratov 提交于
Implement VIR_DOMAIN_UNDEFINE_MANAGED_SAVE and VIR_DOMAIN_UNDEFINE_SNAPSHOTS_METADATA flags support. Signed-off-by: NMaxim Nestratov <mnestratov@virtuozzo.com>
-
- 09 12月, 2015 2 次提交
-
-
由 Peter Krempa 提交于
-
由 Peter Krempa 提交于
Finalize the refactor by adding the 'virDomainDefGetVCpusMax' getter and reusing it accross libvirt.
-
- 24 11月, 2015 1 次提交
-
-
由 Pavel Hrdina 提交于
Signed-off-by: NPavel Hrdina <phrdina@redhat.com>
-
- 19 11月, 2015 1 次提交
-
-
由 Mikhail Feoktistov 提交于
Diff from v1. 1. Add virCheckFlags() call in vzDomainReboot
-
- 10 11月, 2015 1 次提交
-
-
由 Nikolay Shirokovskiy 提交于
Just straight-forward patch. Use reference counting for privdom as stats internally could drop domain lock. Signed-off-by: NNikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
-
- 21 10月, 2015 1 次提交
-
-
由 Ishmanpreet Kaur Khera 提交于
We have macros for both positive and negative string matching. Therefore there is no need to use !STREQ or !STRNEQ. At the same time as we are dropping this, new syntax-check rule is introduced to make sure we won't introduce it again. Signed-off-by: NIshmanpreet Kaur Khera <khera.ishman@gmail.com> Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
-
- 20 10月, 2015 3 次提交
-
-
由 Maxim Nestratov 提交于
The following functions are implemented: vzDomainIsUpdated, vzDomainGetVcpusFlags and vzDomainGetMaxVcpus. Signed-off-by: NMaxim Nestratov <mnestratov@virtuozzo.com>
-
由 Maxim Nestratov 提交于
The following functions were implemented: vzNodeGetCPUStats, vzNodeGetMemoryStats, vzNodeGetCellsFreeMemory and vzNodeGetFreeMemory. Signed-off-by: NMaxim Nestratov <mnestratov@virtuozzo.com>
-
由 Maxim Nestratov 提交于
Because we have no limitation for maximal number of vcpus in containers we report as maximum 1028 just for the sake of common sence. Signed-off-by: NMaxim Nestratov <mnestratov@virtuozzo.com>
-
- 08 10月, 2015 1 次提交
-
-
由 Maxim Nestratov 提交于
Remove unused definitions, functions and structure fields. Signed-off-by: NMaxim Nestratov <mnestratov@virtuozzo.com>
-
- 06 10月, 2015 2 次提交
-
-
由 Maxim Nestratov 提交于
In fact, it was never used as far as vz has no features supporting it. That is why there will be no harm to anyone if we just remove this code to prevent further misunderstanding and efforts to support dead code. Signed-off-by: NMaxim Nestratov <mnestratov@virtuozzo.com>
-
由 Maxim Nestratov 提交于
At the time this code was added we had intentions to support libvirt interface to manage vz networks. In fact, it was never implemented completely to work correctly that makes me think that there will be no harm to anyone if we just rip it off. Moreover, in vz7 we started to use libvirt bridge network driver to manage networks. Signed-off-by: NMaxim Nestratov <mnestratov@virtuozzo.com>
-
- 22 9月, 2015 1 次提交
-
-
由 Peter Krempa 提交于
Commits 45697fe5 and f863ac80 used direct access to the variable instead of the preferred accessor method.
-
- 14 7月, 2015 3 次提交
-
-
由 John Ferlan 提交于
Add the sysfs_prefix argument to the call to allow for setting the path for tests to something other than SYSFS_CPU_PATH which is a derivative of SYSFS_SYSTEM_PATH Use cpupath for nodeCapsInitNUMAFake and remove SYSFS_CPU_PATH
-
由 John Ferlan 提交于
Add the sysfs_prefix argument to the call to allow for setting the path for tests to something other than SYSFS_SYSTEM_PATH.
-
由 John Ferlan 提交于
Add the sysfs_prefix argument to the call to allow for setting the path for tests to something other than SYSFS_SYSTEM_PATH.
-
- 08 7月, 2015 2 次提交
-
-
由 Peter Krempa 提交于
-
由 Peter Krempa 提交于
'maxcpu' and 'vcpus' are set but not used after that
-
- 06 7月, 2015 1 次提交
-
-
由 Dmitry Guryanov 提交于
There should be at least one domain for each guest in cababilities. And in current code we don't add domain for this guest for example. if ((guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM, VIR_ARCH_X86_64, "vz", NULL, 0, NULL)) == NULL) Anyway, with two virt types it looks a litte messy, so let's move adding guest and domain to a separate function. Signed-off-by: NDmitry Guryanov <dguryanov@parallels.com>
-
- 28 6月, 2015 1 次提交
-
-
由 Martin Kletzander 提交于
This reverts commit 9a8d916e. Also some changes that were introduced after that commit are fixed to use 1.2.17 instead of 1.3.0
-
- 26 6月, 2015 4 次提交
-
-
由 Nikolay Shirokovskiy 提交于
Implemented counters: VIR_DOMAIN_MEMORY_STAT_SWAP_IN VIR_DOMAIN_MEMORY_STAT_SWAP_OUT VIR_DOMAIN_MEMORY_STAT_MINOR_FAULT VIR_DOMAIN_MEMORY_STAT_MAJOR_FAULT VIR_DOMAIN_MEMORY_STAT_AVAILABLE VIR_DOMAIN_MEMORY_STAT_ACTUAL_BALLOON VIR_DOMAIN_MEMORY_STAT_UNUSED Comments. 1. Use vzDomObjFromDomainRef/virDomainObjEndAPI pair to get domain object as we use prlsdkGetStatsParam. See previous statistics comments. 2. Balloon statistics is not applicable to containers. Fault statistics for containers not provided in PCS6 yet. Signed-off-by: NNikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
-
由 Nikolay Shirokovskiy 提交于
Comments. Replace vzDomObjFromDomain/virObjectUnlock pair to vzDomObjFromDomainRef/virDomainObjEndAPI as we use prlsdkGetStatsParam. See previous statistics comments. Signed-off-by: NNikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
-
由 Nikolay Shirokovskiy 提交于
Populate counters SDK currenly supports: rx_bytes rx_packets tx_bytes tx_packets Comments. Use vzDomObjFromDomainRef/virDomainObjEndAPI pair to get domain object as we use prlsdkGetStatsParam that can release domain object lock and thus we need a reference in case domain is deleated meanwhile. Signed-off-by: NNikolay Shirokovskiy <nshirokovskiy@virtuozzo.com>
-
由 Michal Privoznik 提交于
Honour our formatting style. Adjust indentation so it matches the rest of our code. Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
-
- 24 6月, 2015 1 次提交
-
-
由 Mikhail Feoktistov 提交于
In this patch we add VIR_DOMAIN_DEVICE_NET handlers implementation for domainAttachDevice and domainDetachDevice callbacks. As soon as we don't support this operation for hypervisor type domains, we implement this functionality for containers only. In detach procedure we find network device by MAC address. Because PrlVmDevNet_GetMacAddress() returns MAC as a UTF-8 encoded null-terminated string, we use memcmp() to compare it. Also we remove corresponding virtual network by prlsdkDelNetAdapter call.
-
- 17 6月, 2015 2 次提交
-
-
由 Maxim Nestratov 提交于
This patch moves all src/parallels/parallels* files to vz/vz* and fixes build accordingly. No functional changes. Signed-off-by: NMaxim Nestratov <mnestratov@parallels.com>
-
由 Maxim Nestratov 提交于
This patch changes all parallels/vz driver structure and function prefixes from parallels to vz. No functional changes. Signed-off-by: NMaxim Nestratov <mnestratov@parallels.com>
-
- 16 6月, 2015 1 次提交
-
-
由 Martin Kletzander 提交于
Since the background for Admin API is merged upstream, we are bumping the minor release version as discussed previously Signed-off-by: NMartin Kletzander <mkletzan@redhat.com>
-
- 09 6月, 2015 2 次提交
-
-
由 Dmitry Guryanov 提交于
This patch fixes several formatting errors, which I missed before pushing previous patches. Mostly because of missing cppi package.
-
由 Nikolay Shirokovskiy 提交于
Statistics provided through PCS SDK. As we have only async interface in SDK we need to be subscribed to statistics in order to get it. Trivial solution on every stat request to subscribe, wait event and then unsubscribe will lead to significant delays in case of a number of successive requests, as the event will be delivered on next PCS server notify cycle. On the other hand we don't want to keep unnesessary subscribtion. So we take an hibrid solution to subcsribe on first request and then keep a subscription while requests are active. We populate cache of statistics on subscribtion events and use this cache to serve libvirts requests. * Cache details. Cache is just handle to last arrived event, we call this cache as if this handle is valid it is used to serve synchronous statistics requests. We use number of successive events count to detect that user lost interest to statistics. We reset this count to 0 on every request. If more than PARALLELS_STATISTICS_DROP_COUNT successive events arrive we unsubscribe. Special value of -1 of this counter is used to differentiate between subscribed/unsubscribed state to protect from delayed events. Values of PARALLELS_STATISTICS_DROP_COUNT and PARALLELS_STATISTICS_TIMEOUT are just drop-ins, choosen without special consideration. * Thread safety issues Use parallelsDomObjFromDomainRef in parallelsDomainBlockStats as we could wait on domain lock down on stack in prlsdkGetStatsParam and if we won't keep reference we could get dangling pointer on return from wait. Signed-off-by: NNikolay Shirokovskiy <nshirokovskiy@parallels.com>
-
- 03 6月, 2015 4 次提交
-
-
由 Maxim Nestratov 提交于
We remember driver name in a new field 'drivername' within private parallels connection structure. When a new domain is defined we use this name to set corresponding virtType. We set VIR_DOMAIN_VIRT_VZ for 'vz' driver and VIR_DOMAIN_VIRT_PARALLELS for 'Parallels'. Signed-off-by: NMaxim Nestratov <mnestratov@parallels.com>
-
vz:///system由 Maxim Nestratov 提交于
Though parallels:///system is still accepted we will encourage users to use vz:///system instead. Signed-off-by: NMaxim Nestratov <mnestratov@parallels.com>
-
由 Maxim Nestratov 提交于
We add this connection driver just as an exact copy with different name to keep backward compatibility. Vz stands for Virtuozzo, which is a new name of Parallels Cloud Server. Signed-off-by: NMaxim Nestratov <mnestratov@parallels.com>
-
由 Maxim Nestratov 提交于
If 'parallels:///system' uri is specified then connection is made to 'Parallels' driver and domain type will be VIR_DOMAIN_VIRT_PARALLELS. In case of 'vz:///system' connection is established to 'vz' driver and domain type will be VIR_DOMAIN_VIRT_VZ. Signed-off-by: NMaxim Nestratov <mnestratov@parallels.com>
-