提交 a0ba6623 编写于 作者: D Daniel Henrique Barboza 提交者: Jiri Denemark

cpu_s390.c: modernize virCPUs390Update

Use automatic cleanup of variables.
Signed-off-by: NDaniel Henrique Barboza <danielhb413@gmail.com>
Message-Id: <20200522195620.3843442-4-danielhb413@gmail.com>
Reviewed-by: NJiri Denemark <jdenemar@redhat.com>
上级 05739fa1
......@@ -45,8 +45,7 @@ static int
virCPUs390Update(virCPUDefPtr guest,
const virCPUDef *host)
{
virCPUDefPtr updated = NULL;
int ret = -1;
g_autoptr(virCPUDef) updated = NULL;
size_t i;
if (guest->mode == VIR_CPU_MODE_CUSTOM) {
......@@ -58,37 +57,34 @@ virCPUs390Update(virCPUDefPtr guest,
virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
_("optional CPU features are not supported"));
}
goto cleanup;
return -1;
}
if (!host) {
virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
_("unknown host CPU model"));
goto cleanup;
return -1;
}
if (!(updated = virCPUDefCopyWithoutModel(guest)))
goto cleanup;
return -1;
updated->mode = VIR_CPU_MODE_CUSTOM;
if (virCPUDefCopyModel(updated, host, true) < 0)
goto cleanup;
return -1;
for (i = 0; i < guest->nfeatures; i++) {
if (virCPUDefUpdateFeature(updated,
guest->features[i].name,
guest->features[i].policy) < 0)
goto cleanup;
return -1;
}
virCPUDefStealModel(guest, updated, false);
guest->mode = VIR_CPU_MODE_CUSTOM;
guest->match = VIR_CPU_MATCH_EXACT;
ret = 0;
cleanup:
virCPUDefFree(updated);
return ret;
return 0;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册