]> git.ipfire.org Git - thirdparty/systemd.git/commit - src/core/service.c
core: make ExecRuntime be manager managed object
authorYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 6 Feb 2018 07:00:34 +0000 (16:00 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 6 Feb 2018 07:00:34 +0000 (16:00 +0900)
commite8a565cb660a7a11f76180fe441ba8e4f9383771
tree05ca214885360c1c25787877b04e565cab785143
parent960c7c2791cbf69d57fdcfccfc25ca140933c549
core: make ExecRuntime be manager managed object

Before this, each ExecRuntime object is owned by a unit. However,
it may be shared with other units which enable JoinsNamespaceOf=.
Thus, by the serialization/deserialization process, its sharing
information, more specifically, reference counter is lost, and
causes issue #7790.

This makes ExecRuntime objects be managed by manager, and changes
the serialization/deserialization process.

Fixes #7790.
src/core/execute.c
src/core/execute.h
src/core/manager.c
src/core/manager.h
src/core/mount.c
src/core/service.c
src/core/socket.c
src/core/swap.c
src/core/unit.c