summaryrefslogtreecommitdiff
path: root/manager.h
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2010-04-21 06:01:13 +0200
committerLennart Poettering <lennart@poettering.net>2010-04-21 06:01:13 +0200
commit701cc384c283206a29b21e4e7302e5cf5f2d9433 (patch)
tree0e8e47d12cb3ea47794bad390658c900ed61d691 /manager.h
parent48507e6621596b0d5503fad6cd9e0685917603f5 (diff)
manager: automatically GC unreferenced units
Diffstat (limited to 'manager.h')
-rw-r--r--manager.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/manager.h b/manager.h
index 356e168bf6..bd0c82ee77 100644
--- a/manager.h
+++ b/manager.h
@@ -145,8 +145,12 @@ struct Manager {
LIST_HEAD(Meta, dbus_unit_queue);
LIST_HEAD(Job, dbus_job_queue);
+ /* Units to remove */
LIST_HEAD(Meta, cleanup_queue);
+ /* Units to check when doing GC */
+ LIST_HEAD(Meta, gc_queue);
+
/* Jobs to be added */
Hashmap *transaction_jobs; /* Unit object => Job object list 1:1 */
JobDependency *transaction_anchor;
@@ -193,6 +197,11 @@ struct Manager {
char *cgroup_controller;
char *cgroup_hierarchy;
+ usec_t gc_queue_timestamp;
+
+ int gc_marker;
+ unsigned n_in_gc_queue;
+
/* Flags */
ManagerRunningAs running_as;
ManagerExitCode exit_code:4;