[libvirt] [PATCH 3/7] qemu: conf: add virQEMUDriverGetDomainCapabilities
Michal Privoznik
mprivozn at redhat.com
Mon Apr 29 12:35:24 UTC 2019
On 4/5/19 1:37 AM, Cole Robinson wrote:
> For now it's just a helper for building a qemu virDomainCapsPtr.
> It will be used in upcoming patches
>
> Signed-off-by: Cole Robinson <crobinso at redhat.com>
> ---
> src/qemu/qemu_conf.c | 39 +++++++++++++++++++++++++++++++++++++++
> src/qemu/qemu_conf.h | 7 +++++++
> src/qemu/qemu_driver.c | 18 +++---------------
> 3 files changed, 49 insertions(+), 15 deletions(-)
>
> diff --git a/src/qemu/qemu_conf.c b/src/qemu/qemu_conf.c
> index 41ce0a978d..635fdcc5a4 100644
> --- a/src/qemu/qemu_conf.c
> +++ b/src/qemu/qemu_conf.c
> @@ -1357,6 +1357,45 @@ virCapsPtr virQEMUDriverGetCapabilities(virQEMUDriverPtr driver,
> return ret;
> }
>
> +
> +/**
> + * virQEMUDriverGetDomainCapabilities:
> + *
> + * Build a virDomainCapsPtr instance for the passed data.
> + *
> + * Returns: a reference to a virDomainCapsPtr instance or NULL
> + */
> +virDomainCapsPtr
> +virQEMUDriverGetDomainCapabilities(virQEMUDriverPtr driver,
> + virQEMUCapsPtr qemuCaps,
> + const char *machine,
> + virArch arch,
> + virDomainVirtType virttype)
> +{
> + virDomainCapsPtr ret = NULL, domCaps = NULL;
> + virCapsPtr caps = NULL;
> + virQEMUDriverConfigPtr cfg = virQEMUDriverGetConfig(driver);
> +
> + if (!(caps = virQEMUDriverGetCapabilities(driver, false)))
> + goto cleanup;
> +
> + if (!(domCaps = virDomainCapsNew(virQEMUCapsGetBinary(qemuCaps), machine,
> + arch, virttype)))
> + goto cleanup;
> +
> + if (virQEMUCapsFillDomainCaps(caps, domCaps, qemuCaps,
> + cfg->firmwares, cfg->nfirmwares) < 0)
You'll need to rebase this because after 5b9819eedc7 there's @privileged
argument.
> + goto cleanup;
> +
> + VIR_STEAL_PTR(ret, domCaps);
> + cleanup:
> + virObjectUnref(domCaps);
> + virObjectUnref(cfg);
> + virObjectUnref(caps);
> + return ret;
> +}
> +
> +
Michal
More information about the libvir-list
mailing list