chiark / gitweb /
core: keep supporting cgroup hybrid layout from v232 for live upgrades
authorTejun Heo <htejun@fb.com>
Wed, 23 Nov 2016 17:27:32 +0000 (12:27 -0500)
committerSven Eden <yamakuzure@gmx.net>
Mon, 17 Jul 2017 15:58:35 +0000 (17:58 +0200)
commitd3c92fb53bb92ec00914aa4b51bd21d88e887128
treef5b9bb0cabb9f267e4185fd52b162d91e639bab4
parentd1fccb5f88df2bdbbbb20033c3f8cff281cec041
core: keep supporting cgroup hybrid layout from v232 for live upgrades

v232's cgroup hybrid mode mounted v2 on /sys/fs/cgroup/elogind, which
unfortunately broke other tools which expect v1 there.  From v233 on, hybrid
mode instead mounts and uses v2 on /sys/fs/cgroup/unified and keeps
/sys/fs/cgroup/elogind on v1 for compatibility with external tools.  However,
to keep elogind live upgrades working, v233+ should be able to recognize v232
layout and keep using it.

This patch adds v232 hybrid mode support.  If v232 layout is detected,
cg_unified(SYSTEMD_CGRouP_CONTROLLER) keeps returning %true but
cg_hybrid_unified() returns %false.  This keeps process management on cgroup v2
but turns off the parallel layout.
src/basic/cgroup-util.c