From: drakenclimber Date: Wed, 25 Oct 2023 20:24:10 +0000 (+0000) Subject: deploy: f28099ea23ab3e7ca8e0111a1e4b90fe2f381015 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3a9fa376e94213653574dd410f40cea57e357e04;p=thirdparty%2Flibcgroup.git deploy: f28099ea23ab3e7ca8e0111a1e4b90fe2f381015 --- diff --git a/error_8h_source.html b/error_8h_source.html index 1a90a3e5..68580642 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:5006
-
const char * cgroup_strerror(int code)
Definition: api.c:4985
+
int cgroup_get_last_errno(void)
Definition: api.c:5052
+
const char * cgroup_strerror(int code)
Definition: api.c:5031
@ ECGROUPMULTIMOUNTED
Definition: error.h:40
@ ECGEOF
Definition: error.h:68
@ ECGNOVERSIONCONVERT
Definition: error.h:79
diff --git a/group__group__groups.html b/group__group__groups.html index e51bc4e0..a12cfd3d 100644 --- a/group__group__groups.html +++ b/group__group__groups.html @@ -733,7 +733,7 @@ int cgroup_convert_cgroup<

Physically create new control group in kernel, with all parameters and values copied from its parent group. The group is created in all hierarchies, where the parent group exists. I.e. following code creates subgroup in all hierarchies, because all of them have root (=parent) group.

struct cgroup *foo = cgroup_new_cgroup("foo");
-
int cgroup_create_cgroup_from_parent(struct cgroup *cgroup, int ignore_ownership)
Definition: api.c:3103
+
int cgroup_create_cgroup_from_parent(struct cgroup *cgroup, int ignore_ownership)
Definition: api.c:3149
Todo:
what is this good for? Why the list of controllers added by cgroup_add_controller() is not used, like in cgroup_create_cgroup()? I can't create subgroup of root group in just one hierarchy with this function!
Parameters
@@ -895,7 +895,7 @@ int 
cgroup_convert_cgroup<

Read all information regarding the group from kernel. Based on name of the group, list of controllers and all parameters and their values are read from all hierarchies, where a group with given name exists. All existing controllers are replaced. I.e. following code will fill root with controllers from all hierarchies, because the root group is available in all of them.

struct cgroup *root = cgroup_new_cgroup("/");
-
int cgroup_get_cgroup(struct cgroup *cgroup)
Definition: api.c:3643
+
int cgroup_get_cgroup(struct cgroup *cgroup)
Definition: api.c:3689
Todo:
what is this function good for? Why is not considered only the list of controllers attached by cgroup_add_controller()? What owners will return cgroup_get_uid_gid() if the group is in multiple hierarchies, each with different owner of tasks file?
Parameters
diff --git a/groups_8h_source.html b/groups_8h_source.html index 8e73c4eb..34bd2baa 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:480
-
int cgroup_get_procs(char *name, char *controller, pid_t **pids, int *size)
Definition: api.c:6046
-
int cgroup_list_mount_points(const enum cg_version_t cgrp_version, char ***mount_paths)
Definition: api.c:6366
+
int cgroup_get_procs(char *name, char *controller, pid_t **pids, int *size)
Definition: api.c:6092
+
int cgroup_list_mount_points(const enum cg_version_t cgrp_version, char ***mount_paths)
Definition: api.c:6412
int cgroup_get_value_int64(struct cgroup_controller *controller, const char *name, int64_t *value)
Definition: wrapper.c:558
bool is_cgroup_mode_hybrid(void)
Definition: wrapper.c:815
-
int cgroup_delete_cgroup(struct cgroup *cgroup, int ignore_migration)
Definition: api.c:3334
+
int cgroup_delete_cgroup(struct cgroup *cgroup, int ignore_migration)
Definition: api.c:3380
int cgroup_get_value_name_count(struct cgroup_controller *controller)
Definition: wrapper.c:769
-
int cgroup_modify_cgroup(struct cgroup *cgroup)
Definition: api.c:2606
+
int cgroup_modify_cgroup(struct cgroup *cgroup)
Definition: api.c:2652
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:6298
+
int cgroup_get_controller_version(const char *const controller, enum cg_version_t *const version)
Definition: api.c:6344
int cgroup_add_value_string(struct cgroup_controller *controller, const char *name, const char *value)
Definition: wrapper.c:269
int cgroup_add_value_bool(struct cgroup_controller *controller, const char *name, bool value)
Definition: wrapper.c:347
bool is_cgroup_mode_legacy(void)
Definition: wrapper.c:803
@@ -275,31 +275,31 @@ $(function() {
struct cgroup_controller * cgroup_get_controller(struct cgroup *cgroup, const char *name)
Definition: wrapper.c:494
int cgroup_add_value_int64(struct cgroup_controller *controller, const char *name, int64_t value)
Definition: wrapper.c:312
bool is_cgroup_mode_unified(void)
Definition: wrapper.c:827
-
int cgroup_delete_cgroup_ext(struct cgroup *cgroup, int flags)
Definition: api.c:3341
+
int cgroup_delete_cgroup_ext(struct cgroup *cgroup, int flags)
Definition: api.c:3387
int cgroup_compare_cgroup(struct cgroup *cgroup_a, struct cgroup *cgroup_b)
Definition: wrapper.c:417
-
int cgroup_create_cgroup_from_parent(struct cgroup *cgroup, int ignore_ownership)
Definition: api.c:3103
+
int cgroup_create_cgroup_from_parent(struct cgroup *cgroup, int ignore_ownership)
Definition: api.c:3149
void cgroup_free_controllers(struct cgroup *cgroup)
Definition: wrapper.c:243
int cgroup_set_value_string(struct cgroup_controller *controller, const char *name, const char *value)
Definition: wrapper.c:536
int cgroup_get_value_uint64(struct cgroup_controller *controller, const char *name, u_int64_t *value)
Definition: wrapper.c:603
char * cgroup_get_value_name(struct cgroup_controller *controller, int index)
Definition: wrapper.c:778
void cgroup_set_permissions(struct cgroup *cgroup, mode_t control_dperm, mode_t control_fperm, mode_t task_fperm)
Definition: api.c:375
int cgroup_set_value_int64(struct cgroup_controller *controller, const char *name, int64_t value)
Definition: wrapper.c:579
-
int cgroup_copy_cgroup(struct cgroup *dst, struct cgroup *src)
Definition: api.c:2715
+
int cgroup_copy_cgroup(struct cgroup *dst, struct cgroup *src)
Definition: api.c:2761
int cgroup_compare_controllers(struct cgroup_controller *cgca, struct cgroup_controller *cgcb)
Definition: wrapper.c:390
void cgroup_free(struct cgroup **cgroup)
Definition: wrapper.c:256
char * cgroup_get_cgroup_name(struct cgroup *cgroup)
Definition: wrapper.c:790
int cgroup_get_value_bool(struct cgroup_controller *controller, const char *name, bool *value)
Definition: wrapper.c:650
-
int cgroup_get_controller_count(struct cgroup *cgroup)
Definition: api.c:6512
-
char * cgroup_get_controller_name(struct cgroup_controller *controller)
Definition: api.c:6531
+
int cgroup_get_controller_count(struct cgroup *cgroup)
Definition: api.c:6558
+
char * cgroup_get_controller_name(struct cgroup_controller *controller)
Definition: api.c:6577
struct cgroup * cgroup_new_cgroup(const char *name)
Definition: wrapper.c:43
-
int cgroup_get_cgroup(struct cgroup *cgroup)
Definition: api.c:3643
+
int cgroup_get_cgroup(struct cgroup *cgroup)
Definition: api.c:3689
int cgroup_add_value_uint64(struct cgroup_controller *controller, const char *name, u_int64_t value)
Definition: wrapper.c:329
-
int cgroup_create_cgroup(struct cgroup *cgroup, int ignore_ownership)
Definition: api.c:2895
+
int cgroup_create_cgroup(struct cgroup *cgroup, int ignore_ownership)
Definition: api.c:2941
int cgroup_set_value_uint64(struct cgroup_controller *controller, const char *name, u_int64_t value)
Definition: wrapper.c:625
int cgroup_add_all_controllers(struct cgroup *cgroup)
Definition: wrapper.c:111
-
enum cg_setup_mode_t cgroup_setup_mode(void)
Definition: api.c:6467
+
enum cg_setup_mode_t cgroup_setup_mode(void)
Definition: api.c:6513
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:6520
+
struct cgroup_controller * cgroup_get_controller_by_index(struct cgroup *cgroup, int index)
Definition: api.c:6566
int cgroup_get_value_string(struct cgroup_controller *controller, const char *name, char **value)
Definition: wrapper.c:512
int cgroup_set_value_bool(struct cgroup_controller *controller, const char *name, bool value)
Definition: wrapper.c:678
Definition: libcgroup-internal.h:109
diff --git a/iterators_8h_source.html b/iterators_8h_source.html index 22d70c63..1db60cb7 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:5081
-
int cgroup_get_all_controller_end(void **handle)
Definition: api.c:5955
-
int cgroup_read_stats_begin(const char *controller, const char *path, void **handle, struct cgroup_stat *stat)
Definition: api.c:5336
-
int cgroup_get_subsys_mount_point_begin(const char *controller, void **handle, char *path)
Definition: api.c:6233
+
int cgroup_walk_tree_end(void **handle)
Definition: api.c:5127
+
int cgroup_get_all_controller_end(void **handle)
Definition: api.c:6001
+
int cgroup_read_stats_begin(const char *controller, const char *path, void **handle, struct cgroup_stat *stat)
Definition: api.c:5382
+
int cgroup_get_subsys_mount_point_begin(const char *controller, void **handle, char *path)
Definition: api.c:6279
cgroup_walk_type
Definition: iterators.h:74
-
int cgroup_get_subsys_mount_point_next(void **handle, char *path)
Definition: api.c:6263
-
int cgroup_get_all_controller_next(void **handle, struct controller_data *info)
Definition: api.c:5968
-
int cgroup_walk_tree_next(int depth, void **handle, struct cgroup_file_info *info, int base_level)
Definition: api.c:5055
+
int cgroup_get_subsys_mount_point_next(void **handle, char *path)
Definition: api.c:6309
+
int cgroup_get_all_controller_next(void **handle, struct controller_data *info)
Definition: api.c:6014
+
int cgroup_walk_tree_next(int depth, void **handle, struct cgroup_file_info *info, int base_level)
Definition: api.c:5101
#define CG_VALUE_MAX
Definition: iterators.h:233
-
int cgroup_get_controller_begin(void **handle, struct cgroup_mount_point *info)
Definition: api.c:5498
+
int cgroup_get_controller_begin(void **handle, struct cgroup_mount_point *info)
Definition: api.c:5544
cgroup_file_type
Definition: iterators.h:106
-
int cgroup_walk_tree_set_flags(void **handle, int flags)
Definition: api.c:5164
-
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:5101
-
int cgroup_get_controller_next(void **handle, struct cgroup_mount_point *info)
Definition: api.c:5450
-
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:5261
-
int cgroup_get_subsys_mount_point_end(void **handle)
Definition: api.c:6285
-
int cgroup_get_controller_end(void **handle)
Definition: api.c:5434
-
int cgroup_read_stats_end(void **handle)
Definition: api.c:5298
-
int cgroup_read_value_next(void **handle, char *buffer, int max)
Definition: api.c:5241
-
int cgroup_read_value_end(void **handle)
Definition: api.c:5224
-
int cgroup_get_all_controller_begin(void **handle, struct controller_data *info)
Definition: api.c:6000
-
int cgroup_get_task_begin(const char *cgroup, const char *controller, void **handle, pid_t *pid)
Definition: api.c:5403
-
int cgroup_get_task_end(void **handle)
Definition: api.c:5367
-
int cgroup_get_task_next(void **handle, pid_t *pid)
Definition: api.c:5381
-
int cgroup_read_stats_next(void **handle, struct cgroup_stat *stat)
Definition: api.c:5317
+
int cgroup_walk_tree_set_flags(void **handle, int flags)
Definition: api.c:5210
+
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:5147
+
int cgroup_get_controller_next(void **handle, struct cgroup_mount_point *info)
Definition: api.c:5496
+
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:5307
+
int cgroup_get_subsys_mount_point_end(void **handle)
Definition: api.c:6331
+
int cgroup_get_controller_end(void **handle)
Definition: api.c:5480
+
int cgroup_read_stats_end(void **handle)
Definition: api.c:5344
+
int cgroup_read_value_next(void **handle, char *buffer, int max)
Definition: api.c:5287
+
int cgroup_read_value_end(void **handle)
Definition: api.c:5270
+
int cgroup_get_all_controller_begin(void **handle, struct controller_data *info)
Definition: api.c:6046
+
int cgroup_get_task_begin(const char *cgroup, const char *controller, void **handle, pid_t *pid)
Definition: api.c:5449
+
int cgroup_get_task_end(void **handle)
Definition: api.c:5413
+
int cgroup_get_task_next(void **handle, pid_t *pid)
Definition: api.c:5427
+
int cgroup_read_stats_next(void **handle, struct cgroup_stat *stat)
Definition: api.c:5363
@ 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/tasks_8h_source.html b/tasks_8h_source.html index 346b049d..a9344e1b 100644 --- a/tasks_8h_source.html +++ b/tasks_8h_source.html @@ -138,18 +138,18 @@ $(function() {
212#endif
213
214#endif /* _LIBCGROUP_TASKS_H */
-
int cgroup_change_cgroup_path(const char *path, pid_t pid, const char *const controllers[])
Definition: api.c:4607
-
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_change_cgroup_path(const char *path, pid_t pid, const char *const controllers[])
Definition: api.c:4653
+
int cgroup_change_cgroup_flags(uid_t uid, gid_t gid, const char *procname, pid_t pid, int flags)
Definition: api.c:4428
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:5880
-
int cgroup_get_current_controller_path(pid_t pid, const char *controller, char **current_path)
Definition: api.c:4836
+
int cgroup_change_cgroup_uid_gid(uid_t uid, gid_t gid, pid_t pid)
Definition: api.c:4641
+
int cgroup_register_unchanged_process(pid_t pid, int flags)
Definition: api.c:5926
+
int cgroup_get_current_controller_path(pid_t pid, const char *controller, char **current_path)
Definition: api.c:4882
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: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:4792
-
int cgroup_change_all_cgroups(void)
Definition: api.c:4687
+
void cgroup_print_rules_config(FILE *fp)
Definition: api.c:4778
+
int cgroup_init_rules_cache(void)
Definition: api.c:4862
+
int cgroup_change_cgroup_uid_gid_flags(uid_t uid, gid_t gid, pid_t pid, int flags)
Definition: api.c:4626
+
int cgroup_reload_cached_rules(void)
Definition: api.c:4838
+
int cgroup_change_all_cgroups(void)
Definition: api.c:4733
Definition: libcgroup-internal.h:117