[libvirt] [PATCH 28/34] conf: Add helper to get pointer to a certain vCPU definition
John Ferlan
jferlan at redhat.com
Mon Nov 23 22:48:45 UTC 2015
On 11/20/2015 10:22 AM, Peter Krempa wrote:
> Once more stuff will be moved into the vCPU data structure it will be
> necessary to get a specific one in some ocasions. Add a helper that will
> simplify this task.
> ---
> src/conf/domain_conf.c | 15 +++++++++++++++
> src/conf/domain_conf.h | 4 ++++
> src/libvirt_private.syms | 1 +
> 3 files changed, 20 insertions(+)
>
> diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
> index 66fc6d3..f4b4700 100644
> --- a/src/conf/domain_conf.c
> +++ b/src/conf/domain_conf.c
> @@ -1520,6 +1520,21 @@ virDomainDefGetVCpus(const virDomainDef *def)
> }
>
>
> +virDomainVCpuInfoPtr
> +virDomainDefGetVCpu(virDomainDefPtr def,
Use of "VCpu" rather than "Vcpu" or "VCPU"
Think this should be "GetVcpuInfo"...
> + unsigned int vcpu)
> +{
> + if (vcpu > def->maxvcpus) {
Should be an accessor for def->maxvcpus
> + virReportError(VIR_ERR_CONFIG_UNSUPPORTED,
> + _("vCPU '%u' is not present in domain definition"),
> + vcpu);
> + return NULL;
> + }
> +
> + return &def->vcpus[vcpu];
yeah - thinking about my comments in 27 - I can foresee a problem with
the ABI check going forward.
> +}
> +
> +
> virDomainDiskDefPtr
> virDomainDiskDefNew(virDomainXMLOptionPtr xmlopt)
> {
> diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h
> index 68f82c6..7c9457a 100644
> --- a/src/conf/domain_conf.h
> +++ b/src/conf/domain_conf.h
> @@ -2135,6 +2135,8 @@ typedef virDomainVCpuInfo *virDomainVCpuInfoPtr;
>
> struct _virDomainVCpuInfo {
> bool online;
> +
> + virBitmapPtr cpumask;
This should be in some future patch...
ACK with changes.
John
> };
>
> typedef struct _virDomainBlkiotune virDomainBlkiotune;
> @@ -2338,6 +2340,8 @@ bool virDomainDefHasVCpusOffline(const virDomainDef *def);
> unsigned int virDomainDefGetVCpusMax(const virDomainDef *def);
> int virDomainDefSetVCpus(virDomainDefPtr def, unsigned int vcpus);
> unsigned int virDomainDefGetVCpus(const virDomainDef *def);
> +virDomainVCpuInfoPtr virDomainDefGetVCpu(virDomainDefPtr def, unsigned int vcpu)
> + ATTRIBUTE_RETURN_CHECK;
>
> unsigned long long virDomainDefGetMemoryInitial(const virDomainDef *def);
> void virDomainDefSetMemoryTotal(virDomainDefPtr def, unsigned long long size);
> diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms
> index d2c4945..449caf6 100644
> --- a/src/libvirt_private.syms
> +++ b/src/libvirt_private.syms
> @@ -217,6 +217,7 @@ virDomainDefGetDefaultEmulator;
> virDomainDefGetMemoryActual;
> virDomainDefGetMemoryInitial;
> virDomainDefGetSecurityLabelDef;
> +virDomainDefGetVCpu;
> virDomainDefGetVCpus;
> virDomainDefGetVCpusMax;
> virDomainDefHasDeviceAddress;
>
More information about the libvir-list
mailing list