mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-22 03:12:22 +00:00
virCgroupKillRecursive: Refactor cleanup
Remove 'cleanup' label and simplify remembering of the returned value from the callback. Signed-off-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
This commit is contained in:
parent
b16629f00c
commit
32ab328461
@ -2532,8 +2532,8 @@ virCgroupKillRecursiveInternal(virCgroupPtr group,
|
||||
int
|
||||
virCgroupKillRecursive(virCgroupPtr group, int signum)
|
||||
{
|
||||
int ret = 0;
|
||||
int rc;
|
||||
bool success = false;
|
||||
size_t i;
|
||||
bool backendAvailable = false;
|
||||
virCgroupBackendPtr *backends = virCgroupBackendGetAll();
|
||||
@ -2544,25 +2544,24 @@ virCgroupKillRecursive(virCgroupPtr group, int signum)
|
||||
for (i = 0; i < VIR_CGROUP_BACKEND_TYPE_LAST; i++) {
|
||||
if (backends && backends[i] && backends[i]->available()) {
|
||||
backendAvailable = true;
|
||||
rc = backends[i]->killRecursive(group, signum, pids);
|
||||
if (rc < 0) {
|
||||
ret = -1;
|
||||
goto cleanup;
|
||||
}
|
||||
if ((rc = backends[i]->killRecursive(group, signum, pids)) < 0)
|
||||
return -1;
|
||||
|
||||
if (rc > 0)
|
||||
ret = rc;
|
||||
success = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (success)
|
||||
return 1;
|
||||
|
||||
if (!backends || !backendAvailable) {
|
||||
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
|
||||
_("no cgroup backend available"));
|
||||
ret = -1;
|
||||
goto cleanup;
|
||||
return -1;
|
||||
}
|
||||
|
||||
cleanup:
|
||||
return ret;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user