- 25 6月, 2015 1 次提交
-
-
由 Dmitry Guryanov 提交于
Remove braces around single-statement blocks in vz_sdk.c
-
- 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.
-
- 18 6月, 2015 2 次提交
-
-
由 Mikhail Feoktistov 提交于
There was many errors in libvirt.log caused by prlsdkDelNet function because job variable was always initialized as PRL_INVALID_HANDLE In this patch job variable gets return value of PrlSrv_DeleteVirtualNetwork function()
-
由 Mikhail Feoktistov 提交于
We need to initialize buflen every time when we get network adapter's friendly name because we call PrlVmDev_GetFriendlyName in a loop
-
- 17 6月, 2015 3 次提交
-
-
由 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 提交于
Here we stop referencing vz driver by different names in error messages. 'parallels driver', 'Parallels Cloud Server', 'Parallels driver' all become just 'vz driver'. No functional changes. Only renaming and a bit of rewording. 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>
-
- 09 6月, 2015 8 次提交
-
-
由 Dmitry Guryanov 提交于
This patch fixes several formatting errors, which I missed before pushing previous patches. Mostly because of missing cppi package.
-
由 Maxim Nestratov 提交于
We are going to add block devices as disks for containers not as filesystems. Signed-off-by: NMaxim Nestratov <mnestratov@parallels.com>
-
由 Maxim Nestratov 提交于
As we can add disks based on block devices to containers and bus type doesn't have any meaning here, let us report always SATA for them. Signed-off-by: NMaxim Nestratov <mnestratov@parallels.com>
-
由 Maxim Nestratov 提交于
Since we are going to add block devices as root disks we have to specify root mount point for boot block devices. But we shouldn't do this if a filesystem disk with such target mount point already exists. Signed-off-by: NMaxim Nestratov <mnestratov@parallels.com>
-
由 Maxim Nestratov 提交于
Signed-off-by: NMaxim Nestratov <mnestratov@parallels.com>
-
由 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>
-
由 Nikolay Shirokovskiy 提交于
2 reasons to to this. 1. PCS SDK really don't care of handler return value. 2. It hard to imagine how notifier can handle subscriber failures. Even if there are some situations we probably will use some special error codes and not just throw error codes we get from SDK itself. Signed-off-by: NNikolay Shirokovskiy <nshirokovskiy@parallels.com>
-
由 Nikolay Shirokovskiy 提交于
Use issuer type instead of event type to group vm related events. This saves us from explicit enumeration of all vm event types in prlsdkHandleVmEvent.
-
- 03 6月, 2015 1 次提交
-
-
由 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>
-
- 28 5月, 2015 1 次提交
-
-
由 Maxim Nestratov 提交于
It is necessary to have unpolluted screen when connecting to parallels driver via virsh. Otherwise a lot of unexpected output one will get on the console. Signed-off-by: NMaxim Nestratov <mnestratov@parallels.com>
-
- 26 5月, 2015 2 次提交
-
-
由 Maxim Nestratov 提交于
Cleanup code in prlsdkLoadDomain doesn't take into account the fact if private domain structure along with freeing function is assigned or not. In case it is, we shouldn't call it manually because virDomainObjListRemove calls it and frees pdom. Also, allocated def structure should be freed only if it's not assigned to domain. Otherwise it will be called twice: one time by virDomainObjListRemove and the second by prlsdkLoadDomain itself. Signed-off-by: NMaxim Nestratov <mnestratov@parallels.com>
-
由 Maxim Nestratov 提交于
It is better to get all necessary parameters and check them on newly created configuration before actually creating a domain with them or applying them to an existing domain. Signed-off-by: NMaxim Nestratov <mnestratov@parallels.com>
-
- 20 5月, 2015 1 次提交
-
-
由 Michal Privoznik 提交于
So far, we are not reporting if numatune was even defined. The value of zero is blindly returned (which maps onto VIR_DOMAIN_NUMATUNE_MEM_STRICT). Unfortunately, we are making decisions based on this value. Instead, we should not only return the correct value, but report to the caller if the value is valid at all. For better viewing of this patch use '-w'. Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
-
- 15 5月, 2015 1 次提交
-
-
由 Jiri Denemark 提交于
Signed-off-by: NJiri Denemark <jdenemar@redhat.com>
-
- 13 5月, 2015 1 次提交
-
-
由 Nikolay Shirokovskiy 提交于
We have a lot of passing arguments code just to pass connection object cause it holds jobTimeout. Taking into account that right now this value is defined at compile time let's just get rid of it and make arguments list more clear in many places. In case we later need some runtime configurable timeout value we can provide this value through arguments function already operate such as a parallels domain object etc as this timeouts are operation( and thus object) specific in practice. Signed-off-by: NNikolay Shirokovskiy <nshirokovskiy@parallels.com>
-
- 29 4月, 2015 1 次提交
-
-
由 Maxim Nestratov 提交于
New functions utilize previosly added prlsdkDelDisk and prlsdkGetDiskIndex Signed-off-by: NMaxim Nestratov <mnestratov@parallels.com>
-
- 28 4月, 2015 1 次提交
-
-
由 Maxim Nestratov 提交于
Signed-off-by: NMaxim Nestratov <mnestratov@parallels.com>
-
- 25 4月, 2015 1 次提交
-
-
由 Maxim Nestratov 提交于
Since net->model is not defined for containers we shouldn't touch it. In case network adapter model is defined, a warning about ignoring it is shown. Signed-off-by: NMaxim Nestratov <mnestratov@parallels.com>
-
- 23 4月, 2015 1 次提交
-
-
由 Michal Privoznik 提交于
Instead of each API copying the same lines of code, lets use the generic function designed just for that purpose. Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
-
- 21 4月, 2015 2 次提交
-
-
由 Cole Robinson 提交于
-
由 Nikolay Shirokovskiy 提交于
In Parallels we do not support device name hints aka <target dev=../> option and full-fledged device disk device addressing through <address type=.. controller=.. bus=.. target=.. unit=../> and have only one index instead. In this situation to be consistent we can only take one-to-one mapping from some reasonable subset of full address. Values outside this subset are invalid to create Parallels VMs. Reasonable mapping is default one defined in virDomainDiskDefAssignAddress. Signed-off-by: NNikolay Shirokovskiy <nshirokovskiy@parallels.com>
-
- 13 4月, 2015 2 次提交
-
-
由 Alexander Burluka 提交于
Parallels Cloud Server supports block devices and virtual NIC live attachment. I implemented that function for block devices so OpenStack volume attachment is now works. Signed-off-by: NAlexander Burluka <aburluka@parallels.com>
-
由 Alexander Burluka 提交于
OpenStack needs disk serial number setup because nova boot --block-device-mapping command generates that param in libvirt xml. I took QEMU libvirt driver behavior as a base. QEMU driver skips inability to set serial and continues work. So Parallels driver will ignore this param too and let domain boot.
-
- 10 4月, 2015 7 次提交
-
-
由 Dmitry Guryanov 提交于
Add implicit input devices in parallelsLoadDomains, when VNC is enabled. Signed-off-by: NDmitry Guryanov <dguryanov@parallels.com>
-
由 Dmitry Guryanov 提交于
We support VNC for containers to have the same interface with VMs. At this moment it just renders linux text console. Of course we don't pass any physical devices and don't emulate virtual devices. Our VNC server renders text from terminal master and sends input events from VNC client to terminal. So add special video type VIR_DOMAIN_VIDEO_TYPE_PARALLELS for these pseudo-devices. Signed-off-by: NDmitry Guryanov <dguryanov@parallels.com>
-
由 Dmitry Guryanov 提交于
We handle this parameter for VMs while defining domains, so let's get this property from PCS and set corresponding field of virDomainNetDef in prlsdkLoadDomains function. Signed-off-by: NDmitry Guryanov <dguryanov@parallels.com>
-
由 Dmitry Guryanov 提交于
Call virDomainDefAddImplicitControllers to add disk controllers, so virDomainDef, filled by this function will look exactly like the one returned by virDomainDefParseString. Signed-off-by: NDmitry Guryanov <dguryanov@parallels.com>
-
由 Dmitry Guryanov 提交于
Set readonly flag for cdrom devices when we retrieve a list of domains from PCS. Signed-off-by: NDmitry Guryanov <dguryanov@parallels.com>
-
由 Dmitry Guryanov 提交于
Implement virDomainManagedSave api function. In PCS this feature called "suspend". You can suspend VM or CT while it is in running or paused state. And after resuming (or starting) it will have the same state, as before suspend. Signed-off-by: NDmitry Guryanov <dguryanov@parallels.com>
-
由 Dmitry Guryanov 提交于
Split function prlsdkDomainChangeState into prlsdkDomainChangeStateLocked and prlsdkDomainChangeState. So it can be used from places, where virDomainObj already found and locked. Signed-off-by: NDmitry Guryanov <dguryanov@parallels.com>
-
- 08 4月, 2015 1 次提交
-
-
由 Maxim Nestratov 提交于
In order to change an existing domain we delete all existing devices and add new from scratch. In case of network devices we should also delete corresponding virtual networks (if any) before removing actual devices from xml. In the patch, we do it by extending prlsdkDoApplyConfig with a new parameter, which stands for old xml, and calling prlsdkDelNet every time old xml is specified. Signed-off-by: NMaxim Nestratov <mnestratov@parallels.com> Signed-off-by: NMichal Privoznik <mprivozn@redhat.com>
-
- 19 3月, 2015 2 次提交
-
-
由 Maxim Nestratov 提交于
network adapter is used
-
由 Maxim Nestratov 提交于
which is on by default when a new VM/CT is created. We should do this because this feature can't be controlled by libvirt now and it sets up some iptables rules. So it's better to do this to avoid potential conflict of different set of rules or to avoid unexpected behavior. Signed-off-by: NMaxim Nestratov <mnestratov@parallels.com>
-