diff options
author | Michal Koutný <mkoutny@suse.com> | 2020-06-01 17:30:35 +0200 |
---|---|---|
committer | Michal Koutný <mkoutny@suse.com> | 2020-08-19 11:41:53 +0200 |
commit | fb46fca7e0c484026bbc9e196aee118800186768 (patch) | |
tree | e2d55d2d90197ca5d8dd0acad5d1d42576fe9f2c /NEWS | |
parent | cgroup: Swap cgroup v1 deletion and migration (diff) | |
download | systemd-fb46fca7e0c484026bbc9e196aee118800186768.tar.xz systemd-fb46fca7e0c484026bbc9e196aee118800186768.zip |
cgroup: Eager realization in unit_free
unit_free(u) realizes direct parent and invalidates members mask of all
ancestors. This isn't sufficient in v1 controller hierarchies since
siblings of the freed unit may have existed only because of the removed
unit.
We cannot be lazy about the siblings because if parent(u) is also
removed, it'd migrate and rmdir cgroups for siblings(u). However,
realized masks of siblings(u) won't reflect this change.
This was a non-issue earlier, because we weren't removing cgroup
directories properly (effectively matching the stale realized mask),
removal failed because of tasks left by missing migration (see previous
commit).
Therefore, ensure realization of all units necessary to clean up after
the free'd unit.
Fixes: #14149
Diffstat (limited to 'NEWS')
0 files changed, 0 insertions, 0 deletions