mirror of
https://github.com/systemd/systemd-stable.git
synced 2025-01-06 13:17:44 +03:00
unit: add new macros to test for unit contexts
This commit is contained in:
parent
6513d561ce
commit
35b7ff80e2
@ -806,12 +806,9 @@ static void unit_queue_siblings(Unit *u) {
|
||||
}
|
||||
|
||||
int unit_realize_cgroup(Unit *u) {
|
||||
CGroupContext *c;
|
||||
|
||||
assert(u);
|
||||
|
||||
c = unit_get_cgroup_context(u);
|
||||
if (!c)
|
||||
if (!UNIT_HAS_CGROUP_CONTEXT(u))
|
||||
return 0;
|
||||
|
||||
/* So, here's the deal: when realizing the cgroups for this
|
||||
|
@ -965,7 +965,7 @@ static int bus_unit_set_transient_property(
|
||||
|
||||
return 1;
|
||||
|
||||
} else if (streq(name, "Slice") && unit_get_cgroup_context(u)) {
|
||||
} else if (streq(name, "Slice") && UNIT_HAS_CGROUP_CONTEXT(u)) {
|
||||
const char *s;
|
||||
|
||||
r = sd_bus_message_read(message, "s", &s);
|
||||
|
@ -381,7 +381,7 @@ static int bus_unit_cgroup_find(sd_bus *bus, const char *path, const char *inter
|
||||
if (!streq_ptr(interface, unit_dbus_interface_from_type(u->type)))
|
||||
return 0;
|
||||
|
||||
if (!unit_get_cgroup_context(u))
|
||||
if (!UNIT_HAS_CGROUP_CONTEXT(u))
|
||||
return 0;
|
||||
|
||||
*found = u;
|
||||
|
@ -1122,7 +1122,7 @@ static int unit_add_target_dependencies(Unit *u) {
|
||||
static int unit_add_slice_dependencies(Unit *u) {
|
||||
assert(u);
|
||||
|
||||
if (!unit_get_cgroup_context(u))
|
||||
if (!UNIT_HAS_CGROUP_CONTEXT(u))
|
||||
return 0;
|
||||
|
||||
if (UNIT_ISSET(u->slice))
|
||||
|
@ -439,6 +439,10 @@ extern const UnitVTable * const unit_vtable[_UNIT_TYPE_MAX];
|
||||
/* For casting the various unit types into a unit */
|
||||
#define UNIT(u) (&(u)->meta)
|
||||
|
||||
#define UNIT_HAS_EXEC_CONTEXT(u) (UNIT_VTABLE(u)->exec_context_offset > 0)
|
||||
#define UNIT_HAS_CGROUP_CONTEXT(u) (UNIT_VTABLE(u)->cgroup_context_offset > 0)
|
||||
#define UNIT_HAS_KILL_CONTEXT(u) (UNIT_VTABLE(u)->kill_context_offset > 0)
|
||||
|
||||
#define UNIT_TRIGGER(u) ((Unit*) set_first((u)->dependencies[UNIT_TRIGGERS]))
|
||||
|
||||
DEFINE_CAST(SERVICE, Service);
|
||||
|
Loading…
Reference in New Issue
Block a user