Systemd/src/libsystemd/sd-bus
Michal Sekletár d9e45bc3ab core: introduce support for cgroup freezer
With cgroup v2 the cgroup freezer is implemented as a cgroup
attribute called cgroup.freeze. cgroup can be frozen by writing "1"
to the file and kernel will send us a notification through
"cgroup.events" after the operation is finished and processes in the
cgroup entered quiescent state, i.e. they are not scheduled to
run. Writing "0" to the attribute file does the inverse and process
execution is resumed.

This commit exposes above low-level functionality through systemd's DBus
API. Each unit type must provide specialized implementation for these
methods, otherwise, we return an error. So far only service, scope, and
slice unit types provide the support. It is possible to check if a
given unit has the support using CanFreeze() DBus property.

Note that DBus API has a synchronous behavior and we dispatch the reply
to freeze/thaw requests only after the kernel has notified us that
requested operation was completed.
2020-04-30 19:02:51 +02:00
..
GVARIANT-SERIALIZATION codespell: fix spelling errors 2019-04-29 16:47:18 +02:00
bus-common-errors.c home: add new systemd-homed service that can manage LUKS homes 2020-01-28 22:36:07 +01:00
bus-common-errors.h core: introduce support for cgroup freezer 2020-04-30 19:02:51 +02:00
bus-container.c util: split out namespace related stuff into a new namespace-util.[ch] pair 2019-03-13 12:16:38 +01:00
bus-container.h tree-wide: drop double newline 2018-06-29 11:02:17 +09:00
bus-control.c sd-bus: when installing a match make sure not to apply it to already queued messages 2019-07-11 12:18:51 +02:00
bus-control.h sd-bus: when installing a match make sure not to apply it to already queued messages 2019-07-11 12:18:51 +02:00
bus-convenience.c sd-bus: add va_list variants of variadic convenience functions 2020-04-02 10:26:18 +02:00
bus-creds.c bus-creds: fix size calculation for storing caps data 2019-06-20 14:55:30 +02:00
bus-creds.h tree-wide: drop double newline 2018-06-29 11:02:17 +09:00
bus-dump.c Remove message->priority field 2020-04-07 15:29:23 +02:00
bus-dump.h sd-bus: export sd_bus_message_dump 2020-01-23 23:38:20 +01:00
bus-error.c tree-wide: drop string.h when string-util.h or friends are included 2019-11-04 00:30:32 +09:00
bus-error.h sd-bus: use _variable_no_sanitize_address_ also for BUS_ERROR_MAP_ELF_REGISTER 2018-12-03 17:35:50 +01:00
bus-gvariant.c tree-wide: drop empty comments 2018-06-29 11:00:30 +09:00
bus-gvariant.h tree-wide: drop double newline 2018-06-29 11:02:17 +09:00
bus-internal.c sd-bus: simplify bus_maybe_reply_error 2020-03-31 22:19:22 +02:00
bus-internal.h tree-wide: drop socket.h when socket-util.h is included 2019-11-04 00:30:32 +09:00
bus-introspect.c tree-wide: use structured initialization at various places 2020-04-24 07:44:42 +02:00
bus-introspect.h sd-bus: split introspection into the content creation and reply creation parts 2019-04-23 12:23:15 +02:00
bus-kernel.c util: split out memcmp()/memset() related calls into memory-util.[ch] 2019-03-13 12:16:43 +01:00
bus-kernel.h tree-wide: drop double newline 2018-06-29 11:02:17 +09:00
bus-match.c sd-bus: when installing a match make sure not to apply it to already queued messages 2019-07-11 12:18:51 +02:00
bus-match.h tree-wide: remove various unused functions 2018-12-02 13:35:34 +09:00
bus-message.c sd-bus: work around ubsan warning 2020-04-23 08:54:30 +02:00
bus-message.h Remove message->priority field 2020-04-07 15:29:23 +02:00
bus-objects.c sd-bus: work around ubsan warning 2020-04-23 08:54:30 +02:00
bus-objects.h test-bus-{vtable,introspect}: share data and test introspect_path() 2019-04-23 22:58:26 +02:00
bus-protocol.h tree-wide: always declare bitflag enums the same way 2019-01-07 17:50:39 +01:00
bus-signature.c sd-bus: add define for the maximum signature length 2019-04-11 14:02:59 +02:00
bus-signature.h tree-wide: drop double newline 2018-06-29 11:02:17 +09:00
bus-slot.c sd-bus: add methods and signals parameter names. Fixes: #1564 2019-02-26 12:55:02 +01:00
bus-slot.h sd-bus: make bus_slot_disconnect() also unref the slot object 2018-07-18 20:54:19 +02:00
bus-socket.c tree-wide: use structured initialization at various places 2020-04-24 07:44:42 +02:00
bus-socket.h tree-wide: drop double newline 2018-06-29 11:02:17 +09:00
bus-track.c sd-bus: voidify two calls to hashmap_iterate() 2019-07-17 11:35:04 +02:00
bus-track.h tree-wide: drop double newline 2018-06-29 11:02:17 +09:00
bus-type.c tree-wide: remove various unused functions 2018-12-02 13:35:34 +09:00
bus-type.h tree-wide: remove various unused functions 2018-12-02 13:35:34 +09:00
sd-bus.c sd-bus: Use pointer syntax for sd_bus_set_exec argv parameter 2020-04-11 21:57:28 +02:00
test-bus-address.c tests: use the test helpers in more places 2019-03-04 14:15:38 +01:00
test-bus-benchmark.c headers: remove unneeded includes from util.h 2019-03-27 11:53:12 +01:00
test-bus-chat.c sd-bus: export sd_bus_message_dump 2020-01-23 23:38:20 +01:00
test-bus-cleanup.c bus: make reference counting non-atomic 2019-03-04 14:16:24 +01:00
test-bus-creds.c basic/cgroup-util: let cgroup_unified_flush() return the detected hierarchy 2019-09-16 18:06:20 +02:00
test-bus-error.c tree-wide: introduce strerror_safe() 2019-07-05 02:43:56 +09:00
test-bus-gvariant.c sd-bus: export sd_bus_message_dump 2020-01-23 23:38:20 +01:00
test-bus-introspect.c test-bus-{vtable,introspect}: share data and test introspect_path() 2019-04-23 22:58:26 +02:00
test-bus-marshal.c sd-bus: export sd_bus_message_dump 2020-01-23 23:38:20 +01:00
test-bus-match.c util: split out memcmp()/memset() related calls into memory-util.[ch] 2019-03-13 12:16:43 +01:00
test-bus-objects.c sd-bus: export sd_bus_message_dump 2020-01-23 23:38:20 +01:00
test-bus-queue-ref-cycle.c codespell: fix spelling errors 2019-04-29 16:47:18 +02:00
test-bus-server.c tree-wide: we forgot to destroy some bus errors 2020-01-18 17:47:20 +01:00
test-bus-signature.c bus-message: avoid an infinite loop on empty structures 2018-10-02 11:53:20 +02:00
test-bus-track.c test: try system bus if user bus cannot be opened 2018-10-01 10:15:54 +02:00
test-bus-vtable-cc.cc tests,meson: add test-bus-vtable, compiled as C and C++ 2017-05-13 15:50:44 -04:00
test-bus-vtable.c test-bus-vtable: also print introspection for the fallback vtable 2019-08-27 19:49:09 +02:00
test-bus-watch-bind.c tree-wide: use the return value from sockaddr_un_set_path() 2020-03-02 15:55:44 +01:00
test-vtable-data.h test-bus-vtable: also print introspection for the fallback vtable 2019-08-27 19:49:09 +02:00