[libvirt] [PATCH] vz: implement memory setting functions in driver
Maxim Nestratov
mnestratov at virtuozzo.com
Fri Nov 6 15:27:52 UTC 2015
05.11.2015 13:13, Nikolay Shirokovskiy пишет:
> Implement functions for vz containers only. vz VMs memory
> managment thru libvirt yet to be designed.
>
[snip]
> static virHypervisorDriver vzDriver = {
> .name = "vz",
> .connectOpen = vzConnectOpen, /* 0.10.0 */
> @@ -1499,6 +1577,9 @@ static virHypervisorDriver vzDriver = {
> .domainBlockStatsFlags = vzDomainBlockStatsFlags, /* 1.2.17 */
> .domainInterfaceStats = vzDomainInterfaceStats, /* 1.2.17 */
> .domainMemoryStats = vzDomainMemoryStats, /* 1.2.17 */
> + .domainSetMemoryFlags = vzDomainSetMemoryFlags, /* 1.2.21 */
> + .domainSetMemory = vzDomainSetMemory, /* 1.2.21 */
> + .domainSetMaxMemory = vzDomainSetMaxMemory, /* 1.2.21 */
1.2.21 is out. There should be 1.2.22. Otherwise ACK.
> };
>
> static virConnectDriver vzConnectDriver = {
> diff --git a/src/vz/vz_sdk.c b/src/vz/vz_sdk.c
> index 89c9e89..2d0f688 100644
> --- a/src/vz/vz_sdk.c
> +++ b/src/vz/vz_sdk.c
> @@ -4036,3 +4036,26 @@ prlsdkGetMemoryStats(virDomainObjPtr dom,
>
> return ret;
> }
> +
> +int prlsdkSetMemsize(virDomainObjPtr dom, unsigned int memsize)
> +{
> + int ret = -1;
> + vzDomObjPtr privdom = dom->privateData;
> + PRL_HANDLE job = PRL_INVALID_HANDLE;
> + PRL_RESULT pret;
> +
> + job = PrlVm_BeginEdit(privdom->sdkdom);
> + if (PRL_FAILED(waitJob(job)))
> + goto out;
> +
> + pret = PrlVmCfg_SetRamSize(privdom->sdkdom, memsize);
> + prlsdkCheckRetGoto(pret, out);
> +
> + job = PrlVm_CommitEx(privdom->sdkdom, PVCF_DETACH_HDD_BUNDLE);
> + if (PRL_FAILED(waitJob(job)))
> + goto out;
> +
> + ret = 0;
> + out:
> + return ret;
> +}
> diff --git a/src/vz/vz_sdk.h b/src/vz/vz_sdk.h
> index ebe4591..88fef4a 100644
> --- a/src/vz/vz_sdk.h
> +++ b/src/vz/vz_sdk.h
> @@ -76,3 +76,4 @@ int
> prlsdkGetVcpuStats(virDomainObjPtr dom, int idx, unsigned long long *time);
> int
> prlsdkGetMemoryStats(virDomainObjPtr dom, virDomainMemoryStatPtr stats, unsigned int nr_stats);
> +int prlsdkSetMemsize(virDomainObjPtr dom, unsigned int memsize);
More information about the libvir-list
mailing list