chiark / gitweb /
unit: initialize bpf cgroup realization state properly
authorLennart Poettering <lennart@poettering.net>
Fri, 24 Nov 2017 18:51:36 +0000 (19:51 +0100)
committerSven Eden <yamakuzure@gmx.net>
Fri, 24 Nov 2017 18:51:36 +0000 (19:51 +0100)
commit3323d919b6e2f09e33f63fd44ead2c370be285c8
treebc3ad7bee4be8474c4356d50c1246fb3ed6d60f6
parentaf8a841fa32a6db5eb584309184fcd73422d4faf
unit: initialize bpf cgroup realization state properly

Before this patch, the bpf cgroup realization state was implicitly set
to "NO", meaning that the bpf configuration was realized but was turned
off. That means invalidation requests for the bpf stuff (which we issue
in blanket fashion when doing a daemon reload) would actually later
result in a us re-realizing the unit, under the assumption it was
already realized once, even though in reality it never was realized
before.

This had the effect that after each daemon-reload we'd end up realizing
*all* defined units, even the unloaded ones, populating cgroupfs with
lots of unneeded empty cgroups.

With this fix we properly set the realiazation state to "INVALIDATED",
i.e. indicating the bpf stuff was never set up for the unit, and hence
when we try to invalidate it later we won't do anything.
src/core/cgroup.c