X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=src%2Fcgroup.h;h=05c858c425c4e10d28c8dee6e6f6e5c1ca50ecd8;hp=d27c063c12fea7d11151be4c5f29adbda507217c;hb=fb385181517aa97fc5b379380cde0c2567f5f444;hpb=e99e38bbdcca3fe5956823bdb3d38544ccf93221 diff --git a/src/cgroup.h b/src/cgroup.h index d27c063c1..05c858c42 100644 --- a/src/cgroup.h +++ b/src/cgroup.h @@ -22,8 +22,6 @@ along with systemd; If not, see . ***/ -#include - typedef struct CGroupBonding CGroupBonding; #include "unit.h" @@ -35,8 +33,6 @@ struct CGroupBonding { Unit *unit; - struct cgroup *cgroup; - /* For the Unit::cgroup_bondings list */ LIST_FIELDS(CGroupBonding, by_unit); @@ -49,8 +45,8 @@ struct CGroupBonding { /* When our tasks are the only ones in this group */ bool only_us:1; - /* Inherit parameters from parent group */ - bool inherit:1; + /* This cgroup is realized */ + bool realized:1; }; int cgroup_bonding_realize(CGroupBonding *b); @@ -65,6 +61,9 @@ int cgroup_bonding_install_list(CGroupBonding *first, pid_t pid); int cgroup_bonding_kill(CGroupBonding *b, int sig); int cgroup_bonding_kill_list(CGroupBonding *first, int sig); +void cgroup_bonding_trim(CGroupBonding *first, bool delete_root); +void cgroup_bonding_trim_list(CGroupBonding *first, bool delete_root); + int cgroup_bonding_is_empty(CGroupBonding *b); int cgroup_bonding_is_empty_list(CGroupBonding *first); @@ -75,8 +74,10 @@ char *cgroup_bonding_to_string(CGroupBonding *b); #include "manager.h" int manager_setup_cgroup(Manager *m); -int manager_shutdown_cgroup(Manager *m, bool delete); +int manager_shutdown_cgroup(Manager *m); int cgroup_notify_empty(Manager *m, const char *group); +Unit* cgroup_unit_by_pid(Manager *m, pid_t pid); + #endif