mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-01-03 11:35:19 +00:00
util: cgroups do not implicitly add task to new machine cgroup
virCgroupNewMachine used to add the pidleader to the newly created machine cgroup. Do not do this implicit anymore. Signed-off-by: Henning Schild <henning.schild@siemens.com>
This commit is contained in:
parent
65e3451ea9
commit
71ce475967
@ -504,6 +504,17 @@ virCgroupPtr virLXCCgroupCreate(virDomainDefPtr def,
|
||||
&cgroup) < 0)
|
||||
goto cleanup;
|
||||
|
||||
if (virCgroupAddTask(cgroup, initpid) < 0) {
|
||||
virErrorPtr saved = virSaveLastError();
|
||||
virCgroupRemove(cgroup);
|
||||
virCgroupFree(&cgroup);
|
||||
if (saved) {
|
||||
virSetError(saved);
|
||||
virFreeError(saved);
|
||||
}
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
/* setup control group permissions for user namespace */
|
||||
if (def->idmap.uidmap) {
|
||||
if (virCgroupSetOwner(cgroup,
|
||||
|
@ -789,6 +789,17 @@ qemuInitCgroup(virQEMUDriverPtr driver,
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
if (virCgroupAddTask(priv->cgroup, vm->pid) < 0) {
|
||||
virErrorPtr saved = virSaveLastError();
|
||||
virCgroupRemove(priv->cgroup);
|
||||
virCgroupFree(&priv->cgroup);
|
||||
if (saved) {
|
||||
virSetError(saved);
|
||||
virFreeError(saved);
|
||||
}
|
||||
goto cleanup;
|
||||
}
|
||||
|
||||
done:
|
||||
ret = 0;
|
||||
cleanup:
|
||||
|
@ -1669,16 +1669,6 @@ virCgroupNewMachineSystemd(const char *name,
|
||||
}
|
||||
}
|
||||
|
||||
if (virCgroupAddTask(*group, pidleader) < 0) {
|
||||
virErrorPtr saved = virSaveLastError();
|
||||
virCgroupRemove(*group);
|
||||
virCgroupFree(group);
|
||||
if (saved) {
|
||||
virSetError(saved);
|
||||
virFreeError(saved);
|
||||
}
|
||||
}
|
||||
|
||||
ret = 0;
|
||||
cleanup:
|
||||
virCgroupFree(&parent);
|
||||
@ -1701,7 +1691,6 @@ int virCgroupTerminateMachine(const char *name,
|
||||
static int
|
||||
virCgroupNewMachineManual(const char *name,
|
||||
const char *drivername,
|
||||
pid_t pidleader,
|
||||
const char *partition,
|
||||
int controllers,
|
||||
virCgroupPtr *group)
|
||||
@ -1727,16 +1716,6 @@ virCgroupNewMachineManual(const char *name,
|
||||
group) < 0)
|
||||
goto cleanup;
|
||||
|
||||
if (virCgroupAddTask(*group, pidleader) < 0) {
|
||||
virErrorPtr saved = virSaveLastError();
|
||||
virCgroupRemove(*group);
|
||||
virCgroupFree(group);
|
||||
if (saved) {
|
||||
virSetError(saved);
|
||||
virFreeError(saved);
|
||||
}
|
||||
}
|
||||
|
||||
done:
|
||||
ret = 0;
|
||||
|
||||
@ -1783,7 +1762,6 @@ virCgroupNewMachine(const char *name,
|
||||
|
||||
return virCgroupNewMachineManual(name,
|
||||
drivername,
|
||||
pidleader,
|
||||
partition,
|
||||
controllers,
|
||||
group);
|
||||
|
Loading…
Reference in New Issue
Block a user