From: drakenclimber Date: Tue, 23 May 2023 21:44:31 +0000 (+0000) Subject: deploy: e07262d8bcd0fab661c48af9522de52daf940fd8 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9858da61b5175ba57b286e4ca3198fea9139ff93;p=thirdparty%2Flibcgroup.git deploy: e07262d8bcd0fab661c48af9522de52daf940fd8 --- diff --git a/annotated.html b/annotated.html index 09ead544..886dd86c 100644 --- a/annotated.html +++ b/annotated.html @@ -132,15 +132,16 @@ $(function() {  Ccontrol_value  Ccontroller_data  Cdeny_list_type - Cext_cgroup_record - CGetCgroupsFromProcCgroupsTest - CGetSubtreeControlTest - Cparent_info - CParseRulesOptionsTest - CProcnameWildcardTest - CSetValuesRecursiveTest - CSubtreeControlTest - Cunchanged_pid + Cexample_opts + Cext_cgroup_record + CGetCgroupsFromProcCgroupsTest + CGetSubtreeControlTest + Cparent_info + CParseRulesOptionsTest + CProcnameWildcardTest + CSetValuesRecursiveTest + CSubtreeControlTest + Cunchanged_pid diff --git a/classes.html b/classes.html index c1b81dea..2a2db417 100644 --- a/classes.html +++ b/classes.html @@ -88,7 +88,7 @@ $(function() {
deny_list_type
E
-
ext_cgroup_record
+
example_opts
ext_cgroup_record
G
GetCgroupsFromProcCgroupsTest
GetSubtreeControlTest
diff --git a/error_8h_source.html b/error_8h_source.html index 3ae42828..3255780e 100644 --- a/error_8h_source.html +++ b/error_8h_source.html @@ -138,8 +138,8 @@ $(function() {
109#endif
110
111#endif /* _LIBCGROUP_INIT_H */
-
int cgroup_get_last_errno(void)
Definition: api.c:4991
-
const char * cgroup_strerror(int code)
Definition: api.c:4970
+
int cgroup_get_last_errno(void)
Definition: api.c:5005
+
const char * cgroup_strerror(int code)
Definition: api.c:4984
@ ECGROUPMULTIMOUNTED
Definition: error.h:40
@ ECGEOF
Definition: error.h:68
@ ECGNOVERSIONCONVERT
Definition: error.h:79
diff --git a/groups_8h_source.html b/groups_8h_source.html index 09206c26..226482e8 100644 --- a/groups_8h_source.html +++ b/groups_8h_source.html @@ -259,15 +259,15 @@ $(function() {
705
706#endif /* _LIBCGROUP_GROUPS_H */
int cgroup_get_uid_gid(struct cgroup *cgroup, uid_t *tasks_uid, gid_t *tasks_gid, uid_t *control_uid, gid_t *control_gid)
Definition: wrapper.c:479
-
int cgroup_get_procs(char *name, char *controller, pid_t **pids, int *size)
Definition: api.c:6030
-
int cgroup_list_mount_points(const enum cg_version_t cgrp_version, char ***mount_paths)
Definition: api.c:6350
+
int cgroup_get_procs(char *name, char *controller, pid_t **pids, int *size)
Definition: api.c:6044
+
int cgroup_list_mount_points(const enum cg_version_t cgrp_version, char ***mount_paths)
Definition: api.c:6364
int cgroup_get_value_int64(struct cgroup_controller *controller, const char *name, int64_t *value)
Definition: wrapper.c:557
bool is_cgroup_mode_hybrid(void)
Definition: wrapper.c:814
int cgroup_delete_cgroup(struct cgroup *cgroup, int ignore_migration)
Definition: api.c:3335
int cgroup_get_value_name_count(struct cgroup_controller *controller)
Definition: wrapper.c:768
int cgroup_modify_cgroup(struct cgroup *cgroup)
Definition: api.c:2603
struct cgroup_controller * cgroup_add_controller(struct cgroup *cgroup, const char *name)
Definition: wrapper.c:61
-
int cgroup_get_controller_version(const char *const controller, enum cg_version_t *const version)
Definition: api.c:6282
+
int cgroup_get_controller_version(const char *const controller, enum cg_version_t *const version)
Definition: api.c:6296
int cgroup_add_value_string(struct cgroup_controller *controller, const char *name, const char *value)
Definition: wrapper.c:268
int cgroup_add_value_bool(struct cgroup_controller *controller, const char *name, bool value)
Definition: wrapper.c:346
bool is_cgroup_mode_legacy(void)
Definition: wrapper.c:802
@@ -289,17 +289,17 @@ $(function() {
void cgroup_free(struct cgroup **cgroup)
Definition: wrapper.c:255
char * cgroup_get_cgroup_name(struct cgroup *cgroup)
Definition: wrapper.c:789
int cgroup_get_value_bool(struct cgroup_controller *controller, const char *name, bool *value)
Definition: wrapper.c:649
-
int cgroup_get_controller_count(struct cgroup *cgroup)
Definition: api.c:6497
-
char * cgroup_get_controller_name(struct cgroup_controller *controller)
Definition: api.c:6516
+
int cgroup_get_controller_count(struct cgroup *cgroup)
Definition: api.c:6511
+
char * cgroup_get_controller_name(struct cgroup_controller *controller)
Definition: api.c:6530
struct cgroup * cgroup_new_cgroup(const char *name)
Definition: wrapper.c:43
int cgroup_get_cgroup(struct cgroup *cgroup)
Definition: api.c:3644
int cgroup_add_value_uint64(struct cgroup_controller *controller, const char *name, u_int64_t value)
Definition: wrapper.c:328
int cgroup_create_cgroup(struct cgroup *cgroup, int ignore_ownership)
Definition: api.c:2892
int cgroup_set_value_uint64(struct cgroup_controller *controller, const char *name, u_int64_t value)
Definition: wrapper.c:624
int cgroup_add_all_controllers(struct cgroup *cgroup)
Definition: wrapper.c:111
-
enum cg_setup_mode_t cgroup_setup_mode(void)
Definition: api.c:6451
+
enum cg_setup_mode_t cgroup_setup_mode(void)
Definition: api.c:6465
int cg_chmod_recursive(struct cgroup *cgroup, mode_t dir_mode, int dirm_change, mode_t file_mode, int filem_change)
Definition: api.c:347
-
struct cgroup_controller * cgroup_get_controller_by_index(struct cgroup *cgroup, int index)
Definition: api.c:6505
+
struct cgroup_controller * cgroup_get_controller_by_index(struct cgroup *cgroup, int index)
Definition: api.c:6519
int cgroup_get_value_string(struct cgroup_controller *controller, const char *name, char **value)
Definition: wrapper.c:511
int cgroup_set_value_bool(struct cgroup_controller *controller, const char *name, bool value)
Definition: wrapper.c:677
Definition: libcgroup-internal.h:107
diff --git a/hierarchy.html b/hierarchy.html index 8938d15d..3684013d 100644 --- a/hierarchy.html +++ b/hierarchy.html @@ -98,44 +98,45 @@ $(function() {  Ccontrol_value  Ccontroller_data  Cdeny_list_type - CException - Cftests.cgroup.CgroupError - Cftests.config.ConfigError - Cftests.container.ContainerError - Cftests.run.RunError - Cext_cgroup_record - Cobject - Cftests.cgroup.Cgroup - Cftests.cgroup.CgroupMount - Cftests.config.Config - Cftests.container.Container - Cftests.controller.Controller - Cftests.log.Log - Cftests.process.Process - Cftests.run.Run - Cftests.systemd.Systemd - Cparent_info - Ctesting::Test - CAPIArgsTest - CBuildPathV1Test - CBuildTasksProcPathTest - CCgroupCompareIgnoreRuleTest - CCgroupCreateCgroupTest - CCgroupGetCgroupTest - CCgroupProcessV1MntTest - CCgroupProcessV2MntTest - CCgroupV2ControllerEnabled - CCgsetParseRFlagTest - CChownChmodTasksTest - CGetCgroupsFromProcCgroupsTest - CGetSubtreeControlTest - CParseRulesOptionsTest - CProcnameWildcardTest - CSetValuesRecursiveTest - CSubtreeControlTest - Cunchanged_pid - CEnum - Cftests.cgroup.CgroupVersion + Cexample_opts + CException + Cftests.cgroup.CgroupError + Cftests.config.ConfigError + Cftests.container.ContainerError + Cftests.run.RunError + Cext_cgroup_record + Cobject + Cftests.cgroup.Cgroup + Cftests.cgroup.CgroupMount + Cftests.config.Config + Cftests.container.Container + Cftests.controller.Controller + Cftests.log.Log + Cftests.process.Process + Cftests.run.Run + Cftests.systemd.Systemd + Cparent_info + Ctesting::Test + CAPIArgsTest + CBuildPathV1Test + CBuildTasksProcPathTest + CCgroupCompareIgnoreRuleTest + CCgroupCreateCgroupTest + CCgroupGetCgroupTest + CCgroupProcessV1MntTest + CCgroupProcessV2MntTest + CCgroupV2ControllerEnabled + CCgsetParseRFlagTest + CChownChmodTasksTest + CGetCgroupsFromProcCgroupsTest + CGetSubtreeControlTest + CParseRulesOptionsTest + CProcnameWildcardTest + CSetValuesRecursiveTest + CSubtreeControlTest + Cunchanged_pid + CEnum + Cftests.cgroup.CgroupVersion diff --git a/iterators_8h_source.html b/iterators_8h_source.html index e1c7e334..72b18c74 100644 --- a/iterators_8h_source.html +++ b/iterators_8h_source.html @@ -188,31 +188,31 @@ $(function() {
433#endif
434
435#endif /* _LIBCGROUP_ITERATORS_H */
-
int cgroup_walk_tree_end(void **handle)
Definition: api.c:5066
-
int cgroup_get_all_controller_end(void **handle)
Definition: api.c:5939
-
int cgroup_read_stats_begin(const char *controller, const char *path, void **handle, struct cgroup_stat *stat)
Definition: api.c:5321
-
int cgroup_get_subsys_mount_point_begin(const char *controller, void **handle, char *path)
Definition: api.c:6217
+
int cgroup_walk_tree_end(void **handle)
Definition: api.c:5080
+
int cgroup_get_all_controller_end(void **handle)
Definition: api.c:5953
+
int cgroup_read_stats_begin(const char *controller, const char *path, void **handle, struct cgroup_stat *stat)
Definition: api.c:5335
+
int cgroup_get_subsys_mount_point_begin(const char *controller, void **handle, char *path)
Definition: api.c:6231
cgroup_walk_type
Definition: iterators.h:74
-
int cgroup_get_subsys_mount_point_next(void **handle, char *path)
Definition: api.c:6247
-
int cgroup_get_all_controller_next(void **handle, struct controller_data *info)
Definition: api.c:5952
-
int cgroup_walk_tree_next(int depth, void **handle, struct cgroup_file_info *info, int base_level)
Definition: api.c:5040
+
int cgroup_get_subsys_mount_point_next(void **handle, char *path)
Definition: api.c:6261
+
int cgroup_get_all_controller_next(void **handle, struct controller_data *info)
Definition: api.c:5966
+
int cgroup_walk_tree_next(int depth, void **handle, struct cgroup_file_info *info, int base_level)
Definition: api.c:5054
#define CG_VALUE_MAX
Definition: iterators.h:233
-
int cgroup_get_controller_begin(void **handle, struct cgroup_mount_point *info)
Definition: api.c:5483
+
int cgroup_get_controller_begin(void **handle, struct cgroup_mount_point *info)
Definition: api.c:5497
cgroup_file_type
Definition: iterators.h:106
-
int cgroup_walk_tree_set_flags(void **handle, int flags)
Definition: api.c:5149
-
int cgroup_walk_tree_begin(const char *controller, const char *base_path, int depth, void **handle, struct cgroup_file_info *info, int *base_level)
Definition: api.c:5086
-
int cgroup_get_controller_next(void **handle, struct cgroup_mount_point *info)
Definition: api.c:5435
-
int cgroup_read_value_begin(const char *const controller, const char *path, const char *const name, void **handle, char *buffer, int max)
Definition: api.c:5246
-
int cgroup_get_subsys_mount_point_end(void **handle)
Definition: api.c:6269
-
int cgroup_get_controller_end(void **handle)
Definition: api.c:5419
-
int cgroup_read_stats_end(void **handle)
Definition: api.c:5283
-
int cgroup_read_value_next(void **handle, char *buffer, int max)
Definition: api.c:5226
-
int cgroup_read_value_end(void **handle)
Definition: api.c:5209
-
int cgroup_get_all_controller_begin(void **handle, struct controller_data *info)
Definition: api.c:5984
-
int cgroup_get_task_begin(const char *cgroup, const char *controller, void **handle, pid_t *pid)
Definition: api.c:5388
-
int cgroup_get_task_end(void **handle)
Definition: api.c:5352
-
int cgroup_get_task_next(void **handle, pid_t *pid)
Definition: api.c:5366
-
int cgroup_read_stats_next(void **handle, struct cgroup_stat *stat)
Definition: api.c:5302
+
int cgroup_walk_tree_set_flags(void **handle, int flags)
Definition: api.c:5163
+
int cgroup_walk_tree_begin(const char *controller, const char *base_path, int depth, void **handle, struct cgroup_file_info *info, int *base_level)
Definition: api.c:5100
+
int cgroup_get_controller_next(void **handle, struct cgroup_mount_point *info)
Definition: api.c:5449
+
int cgroup_read_value_begin(const char *const controller, const char *path, const char *const name, void **handle, char *buffer, int max)
Definition: api.c:5260
+
int cgroup_get_subsys_mount_point_end(void **handle)
Definition: api.c:6283
+
int cgroup_get_controller_end(void **handle)
Definition: api.c:5433
+
int cgroup_read_stats_end(void **handle)
Definition: api.c:5297
+
int cgroup_read_value_next(void **handle, char *buffer, int max)
Definition: api.c:5240
+
int cgroup_read_value_end(void **handle)
Definition: api.c:5223
+
int cgroup_get_all_controller_begin(void **handle, struct controller_data *info)
Definition: api.c:5998
+
int cgroup_get_task_begin(const char *cgroup, const char *controller, void **handle, pid_t *pid)
Definition: api.c:5402
+
int cgroup_get_task_end(void **handle)
Definition: api.c:5366
+
int cgroup_get_task_next(void **handle, pid_t *pid)
Definition: api.c:5380
+
int cgroup_read_stats_next(void **handle, struct cgroup_stat *stat)
Definition: api.c:5316
@ CGROUP_WALK_TYPE_POST_DIR
Definition: iterators.h:100
@ CGROUP_WALK_TYPE_PRE_DIR
Definition: iterators.h:87
@ CGROUP_FILE_TYPE_OTHER
Definition: iterators.h:109
diff --git a/md_samples_cmdline_systemd_with_idle_process.html b/md_samples_cmdline_systemd_with_idle_process.html index 8ab33fb7..f99e11ee 100644 --- a/md_samples_cmdline_systemd_with_idle_process.html +++ b/md_samples_cmdline_systemd_with_idle_process.html @@ -78,6 +78,7 @@ $(function() {

Creating a Systemd Scope and Child Hierarchy via Libcgroup Command Line

The goal of this document is to outline the steps required to create a systemd scope and a child cgroup hierarchy using the libcgroup command line tools.

+

The following steps are encapsulated in a C example using the libcgroup C APIs.

The following steps are encapsulated in a libcgroup automated test.

Requirements:

diff --git a/search/all_a.js b/search/all_a.js index 87d0b0ff..c436384f 100644 --- a/search/all_a.js +++ b/search/all_a.js @@ -10,5 +10,6 @@ var searchData= ['ecgroupparsefail_7',['ECGROUPPARSEFAIL',['../group__group__errors.html#gga06fc87d81c62e9abb8790b6e5713c55bac62bda67f3029c39ef456100008b1f39',1,'error.h']]], ['ecgrulesparsefail_8',['ECGRULESPARSEFAIL',['../group__group__errors.html#ga515eba7218b187ffe263b7d9ecb3ac1b',1,'error.h']]], ['enabled_9',['enabled',['../structcontroller__data.html#a24be412cfb6c19f7a13a4bff9e55206e',1,'controller_data']]], - ['ext_5fcgroup_5frecord_10',['ext_cgroup_record',['../structext__cgroup__record.html',1,'']]] + ['example_5fopts_10',['example_opts',['../structexample__opts.html',1,'']]], + ['ext_5fcgroup_5frecord_11',['ext_cgroup_record',['../structext__cgroup__record.html',1,'']]] ]; diff --git a/search/classes_4.js b/search/classes_4.js index 1cb7a50f..0517231c 100644 --- a/search/classes_4.js +++ b/search/classes_4.js @@ -1,4 +1,5 @@ var searchData= [ - ['ext_5fcgroup_5frecord_0',['ext_cgroup_record',['../structext__cgroup__record.html',1,'']]] + ['example_5fopts_0',['example_opts',['../structexample__opts.html',1,'']]], + ['ext_5fcgroup_5frecord_1',['ext_cgroup_record',['../structext__cgroup__record.html',1,'']]] ]; diff --git a/structexample__opts.html b/structexample__opts.html new file mode 100644 index 00000000..1a35a654 --- /dev/null +++ b/structexample__opts.html @@ -0,0 +1,102 @@ + + + + + + + +libcgroup: example_opts Struct Reference + + + + + + + + + +
+
+ + + + + + +
+
libcgroup +
+
+
+ + + + + + + + +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
+ +
example_opts Struct Reference
+
+
+ + + + + + + + + + +

+Data Fields

+char slice [FILENAME_MAX]
 
+char scope [FILENAME_MAX]
 
+struct cgroup_systemd_scope_opts systemd_opts
 
+bool debug
 
+
The documentation for this struct was generated from the following file: +
+ + + + diff --git a/systemd_8h_source.html b/systemd_8h_source.html index 6127edbb..ae8c1bcc 100644 --- a/systemd_8h_source.html +++ b/systemd_8h_source.html @@ -124,31 +124,31 @@ $(function() {
80int cgroup_create_scope2(struct cgroup *cgroup, int ignore_ownership,
81 const struct cgroup_systemd_scope_opts * const opts);
82
-
90void cgroup_set_default_systemd_cgroup(void);
-
91
-
103int cgroup_alloc_systemd_opts(const char * const conf, const char * const value);
-
104
-
115int cgroup_add_systemd_opts(const char * const conf, const char * const value);
-
116
-
120void cgroup_cleanup_systemd_opts(void);
-
121
-
122/*
-
123 * Write the specified slice and scope to the libcgroup systemd run file. This
-
124 * slice and scope will then be used as the default cgroup root. Subsequent
-
125 * libcgroup commands, cgget, etc., will utilize this slice and scope when
-
126 * constructing the libcgroup path
-
127 *
-
128 * @param slice Slice name, e.g. libcgroup.slice
-
129 * @param scope Scope name, e.g. database.scope
-
130 */
-
131int cgroup_write_systemd_default_cgroup(const char * const slice,
-
132 const char * const scope);
-
133
-
134#ifdef __cplusplus
-
135} /* extern "C" */
-
136#endif
-
137
-
138#endif /* _LIBCGROUP_SYSTEMD_H */
+
92int cgroup_set_default_systemd_cgroup(void);
+
93
+
105int cgroup_alloc_systemd_opts(const char * const conf, const char * const value);
+
106
+
117int cgroup_add_systemd_opts(const char * const conf, const char * const value);
+
118
+
122void cgroup_cleanup_systemd_opts(void);
+
123
+
124/*
+
125 * Write the specified slice and scope to the libcgroup systemd run file. This
+
126 * slice and scope will then be used as the default cgroup root. Subsequent
+
127 * libcgroup commands, cgget, etc., will utilize this slice and scope when
+
128 * constructing the libcgroup path
+
129 *
+
130 * @param slice Slice name, e.g. libcgroup.slice
+
131 * @param scope Scope name, e.g. database.scope
+
132 */
+
133int cgroup_write_systemd_default_cgroup(const char * const slice,
+
134 const char * const scope);
+
135
+
136#ifdef __cplusplus
+
137} /* extern "C" */
+
138#endif
+
139
+
140#endif /* _LIBCGROUP_SYSTEMD_H */
Definition: systemd.h:39
Definition: systemd.h:27
pid_t pid
Definition: systemd.h:33
diff --git a/tasks_8h_source.html b/tasks_8h_source.html index 72ad866d..a30cbf3c 100644 --- a/tasks_8h_source.html +++ b/tasks_8h_source.html @@ -142,14 +142,14 @@ $(function() {
int cgroup_change_cgroup_flags(uid_t uid, gid_t gid, const char *procname, pid_t pid, int flags)
Definition: api.c:4382
int cgroup_attach_task(struct cgroup *cgroup)
Definition: api.c:2095
int cgroup_change_cgroup_uid_gid(uid_t uid, gid_t gid, pid_t pid)
Definition: api.c:4595
-
int cgroup_register_unchanged_process(pid_t pid, int flags)
Definition: api.c:5864
-
int cgroup_get_current_controller_path(pid_t pid, const char *controller, char **current_path)
Definition: api.c:4823
+
int cgroup_register_unchanged_process(pid_t pid, int flags)
Definition: api.c:5878
+
int cgroup_get_current_controller_path(pid_t pid, const char *controller, char **current_path)
Definition: api.c:4837
int cgroup_attach_task_pid(struct cgroup *cgroup, pid_t tid)
Definition: api.c:2024
-
void cgroup_print_rules_config(FILE *fp)
Definition: api.c:4718
-
int cgroup_init_rules_cache(void)
Definition: api.c:4802
+
void cgroup_print_rules_config(FILE *fp)
Definition: api.c:4732
+
int cgroup_init_rules_cache(void)
Definition: api.c:4816
int cgroup_change_cgroup_uid_gid_flags(uid_t uid, gid_t gid, pid_t pid, int flags)
Definition: api.c:4580
-
int cgroup_reload_cached_rules(void)
Definition: api.c:4778
-
int cgroup_change_all_cgroups(void)
Definition: api.c:4673
+
int cgroup_reload_cached_rules(void)
Definition: api.c:4792
+
int cgroup_change_all_cgroups(void)
Definition: api.c:4687
Definition: libcgroup-internal.h:115