[libvirt] [PATCH 13/53] vircgroup: introduce virCgroupV2PathOfController
Michal Privoznik
mprivozn at redhat.com
Thu Oct 4 11:18:12 UTC 2018
On 10/02/2018 10:43 AM, Pavel Hrdina wrote:
> Signed-off-by: Pavel Hrdina <phrdina at redhat.com>
> ---
> src/util/vircgroupv2.c | 24 ++++++++++++++++++++++++
> 1 file changed, 24 insertions(+)
>
> diff --git a/src/util/vircgroupv2.c b/src/util/vircgroupv2.c
> index 57be0b92c9..3ca463e4c2 100644
> --- a/src/util/vircgroupv2.c
> +++ b/src/util/vircgroupv2.c
> @@ -313,6 +313,29 @@ virCgroupV2GetAnyController(virCgroupPtr group)
> }
>
>
> +static int
> +virCgroupV2PathOfController(virCgroupPtr group,
> + int controller,
> + const char *key,
> + char **path)
> +{
> + if (!virCgroupV2HasController(group, controller)) {
> + virReportError(VIR_ERR_INTERNAL_ERROR,
> + _("v2 controller '%s' is not available"),
> + virCgroupV2ControllerTypeToString(controller));
> + return -1;
> + }
Looks like this check ^^ can be moved to the caller:
virCgroupPathOfController() {
if (!virCgroupHasController()) error();
group->backend->pathOfController();
}
But feel free to save that for a follow up patch.
> +
> + if (virAsprintf(path, "%s%s/%s",
> + group->unified.mountPoint,
> + group->unified.placement,
> + key ? key : "") < 0)
> + return -1;
> +
> + return 0;
> +}
> +
> +
> virCgroupBackend virCgroupV2Backend = {
> .type = VIR_CGROUP_BACKEND_TYPE_V2,
>
> @@ -327,6 +350,7 @@ virCgroupBackend virCgroupV2Backend = {
> .detectControllers = virCgroupV2DetectControllers,
> .hasController = virCgroupV2HasController,
> .getAnyController = virCgroupV2GetAnyController,
> + .pathOfController = virCgroupV2PathOfController,
> };
>
>
>
ACK
Michal
More information about the libvir-list
mailing list