/kernel/linux/linux-5.10/kernel/cgroup/ |
H A D | freezer.c | 14 static void cgroup_propagate_frozen(struct cgroup *cgrp, bool frozen) in cgroup_propagate_frozen() argument 24 while ((cgrp = cgroup_parent(cgrp))) { in cgroup_propagate_frozen() 26 cgrp->freezer.nr_frozen_descendants += desc; in cgroup_propagate_frozen() 27 if (!test_bit(CGRP_FROZEN, &cgrp->flags) && in cgroup_propagate_frozen() 28 test_bit(CGRP_FREEZE, &cgrp->flags) && in cgroup_propagate_frozen() 29 cgrp->freezer.nr_frozen_descendants == in cgroup_propagate_frozen() 30 cgrp->nr_descendants) { in cgroup_propagate_frozen() 31 set_bit(CGRP_FROZEN, &cgrp->flags); in cgroup_propagate_frozen() 32 cgroup_file_notify(&cgrp in cgroup_propagate_frozen() 52 cgroup_update_frozen(struct cgroup *cgrp) cgroup_update_frozen() argument 89 cgroup_inc_frozen_cnt(struct cgroup *cgrp) cgroup_inc_frozen_cnt() argument 97 cgroup_dec_frozen_cnt(struct cgroup *cgrp) cgroup_dec_frozen_cnt() argument 109 struct cgroup *cgrp; cgroup_enter_frozen() local 133 struct cgroup *cgrp; cgroup_leave_frozen() local 177 cgroup_do_freeze(struct cgroup *cgrp, bool freeze) cgroup_do_freeze() argument 260 cgroup_freeze(struct cgroup *cgrp, bool freeze) cgroup_freeze() argument [all...] |
H A D | rstat.c | 9 static void cgroup_base_stat_flush(struct cgroup *cgrp, int cpu); 11 static struct cgroup_rstat_cpu *cgroup_rstat_cpu(struct cgroup *cgrp, int cpu) in cgroup_rstat_cpu() argument 13 return per_cpu_ptr(cgrp->rstat_cpu, cpu); in cgroup_rstat_cpu() 18 * @cgrp: target cgroup 21 * @cgrp's rstat_cpu on @cpu was updated. Put it on the parent's matching 25 void cgroup_rstat_updated(struct cgroup *cgrp, int cpu) in cgroup_rstat_updated() argument 32 if (!cgroup_parent(cgrp)) in cgroup_rstat_updated() 40 * instead of NULL, we can tell whether @cgrp is on the list by in cgroup_rstat_updated() 43 if (cgroup_rstat_cpu(cgrp, cpu)->updated_next) in cgroup_rstat_updated() 48 /* put @cgrp an in cgroup_rstat_updated() 191 cgroup_rstat_flush(struct cgroup *cgrp) cgroup_rstat_flush() argument 206 cgroup_rstat_flush_irqsafe(struct cgroup *cgrp) cgroup_rstat_flush_irqsafe() argument 241 cgroup_rstat_init(struct cgroup *cgrp) cgroup_rstat_init() argument 263 cgroup_rstat_exit(struct cgroup *cgrp) cgroup_rstat_exit() argument 312 cgroup_base_stat_flush(struct cgroup *cgrp, int cpu) cgroup_base_stat_flush() argument 341 cgroup_base_stat_cputime_account_begin(struct cgroup *cgrp) cgroup_base_stat_cputime_account_begin() argument 350 cgroup_base_stat_cputime_account_end(struct cgroup *cgrp, struct cgroup_rstat_cpu *rstatc) cgroup_base_stat_cputime_account_end() argument 358 __cgroup_account_cputime(struct cgroup *cgrp, u64 delta_exec) __cgroup_account_cputime() argument 367 __cgroup_account_cputime_field(struct cgroup *cgrp, enum cpu_usage_stat index, u64 delta_exec) __cgroup_account_cputime_field() argument 429 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_base_stat_cputime_show() local [all...] |
H A D | cgroup.c | 158 struct cgroup_root cgrp_dfl_root = { .cgrp.rstat_cpu = &cgrp_dfl_root_rstat_cpu }; 213 static int cgroup_apply_control(struct cgroup *cgrp); 214 static void cgroup_finalize_control(struct cgroup *cgrp, int ret); 217 static int cgroup_destroy_locked(struct cgroup *cgrp); 218 static struct cgroup_subsys_state *css_create(struct cgroup *cgrp, 223 struct cgroup *cgrp, struct cftype cfts[], 244 * @cgrp: the cgroup of interest 292 bool cgroup_on_dfl(const struct cgroup *cgrp) in cgroup_on_dfl() argument 294 return cgrp->root == &cgrp_dfl_root; in cgroup_on_dfl() 328 static bool cgroup_has_tasks(struct cgroup *cgrp) in cgroup_has_tasks() argument 333 cgroup_is_threaded(struct cgroup *cgrp) cgroup_is_threaded() argument 339 cgroup_is_mixable(struct cgroup *cgrp) cgroup_is_mixable() argument 350 cgroup_can_be_thread_root(struct cgroup *cgrp) cgroup_can_be_thread_root() argument 372 cgroup_is_thread_root(struct cgroup *cgrp) cgroup_is_thread_root() argument 394 cgroup_is_valid_domain(struct cgroup *cgrp) cgroup_is_valid_domain() argument 412 cgroup_control(struct cgroup *cgrp) cgroup_control() argument 433 cgroup_ss_mask(struct cgroup *cgrp) cgroup_ss_mask() argument 460 cgroup_css(struct cgroup *cgrp, struct cgroup_subsys *ss) cgroup_css() argument 478 cgroup_tryget_css(struct cgroup *cgrp, struct cgroup_subsys *ss) cgroup_tryget_css() argument 502 cgroup_e_css_by_mask(struct cgroup *cgrp, struct cgroup_subsys *ss) cgroup_e_css_by_mask() argument 536 cgroup_e_css(struct cgroup *cgrp, struct cgroup_subsys *ss) cgroup_e_css() argument 563 cgroup_get_e_css(struct cgroup *cgrp, struct cgroup_subsys *ss) cgroup_get_e_css() argument 585 cgroup_get_live(struct cgroup *cgrp) cgroup_get_live() argument 596 __cgroup_task_count(const struct cgroup *cgrp) __cgroup_task_count() argument 613 cgroup_task_count(const struct cgroup *cgrp) cgroup_task_count() argument 626 struct cgroup *cgrp = of->kn->parent->priv; of_css() local 793 cgroup_update_populated(struct cgroup *cgrp, bool populated) cgroup_update_populated() argument 1054 find_existing_css_set(struct css_set *old_cset, struct cgroup *cgrp, struct cgroup_subsys_state *template[]) find_existing_css_set() argument 1140 link_css_set(struct list_head *tmp_links, struct css_set *cset, struct cgroup *cgrp) link_css_set() argument 1173 find_css_set(struct css_set *old_cset, struct cgroup *cgrp) find_css_set() argument 1312 struct cgroup *cgrp = &root->cgrp; cgroup_destroy_root() local 1461 cgroup_file_name(struct cgroup *cgrp, const struct cftype *cft, char *buf) cgroup_file_name() argument 1558 struct cgroup *cgrp; cgroup_kn_unlock() local 1590 struct cgroup *cgrp; cgroup_kn_lock_live() local 1619 cgroup_rm_file(struct cgroup *cgrp, const struct cftype *cft) cgroup_rm_file() argument 1645 struct cgroup *cgrp = css->cgroup; css_clear_dir() local 1674 struct cgroup *cgrp = css->cgroup; css_populate_dir() local 1923 init_cgroup_housekeeping(struct cgroup *cgrp) init_cgroup_housekeeping() argument 1951 struct cgroup *cgrp = &root->cgrp; init_cgroup_root() local 2084 struct cgroup *cgrp; cgroup_do_get_tree() local 2270 cgroup_path_ns_locked(struct cgroup *cgrp, char *buf, size_t buflen, struct cgroup_namespace *ns) cgroup_path_ns_locked() argument 2278 cgroup_path_ns(struct cgroup *cgrp, char *buf, size_t buflen, struct cgroup_namespace *ns) cgroup_path_ns() argument 2311 struct cgroup *cgrp; task_cgroup_path() local 2945 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_controllers_show() local 2954 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_subtree_control_show() local 2969 cgroup_update_dfl_csses(struct cgroup *cgrp) cgroup_update_dfl_csses() argument 3071 cgroup_save_control(struct cgroup *cgrp) cgroup_save_control() argument 3091 cgroup_propagate_control(struct cgroup *cgrp) cgroup_propagate_control() argument 3112 cgroup_restore_control(struct cgroup *cgrp) cgroup_restore_control() argument 3127 struct cgroup *cgrp = css->cgroup; css_visible() local 3149 cgroup_apply_control_enable(struct cgroup *cgrp) cgroup_apply_control_enable() argument 3195 cgroup_apply_control_disable(struct cgroup *cgrp) cgroup_apply_control_disable() argument 3240 cgroup_apply_control(struct cgroup *cgrp) cgroup_apply_control() argument 3269 cgroup_finalize_control(struct cgroup *cgrp, int ret) cgroup_finalize_control() argument 3279 cgroup_vet_subtree_control_enable(struct cgroup *cgrp, u16 enable) cgroup_vet_subtree_control_enable() argument 3325 struct cgroup *cgrp, *child; cgroup_subtree_control_write() local 3424 cgroup_enable_threaded(struct cgroup *cgrp) cgroup_enable_threaded() argument 3473 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_type_show() local 3490 struct cgroup *cgrp; cgroup_type_write() local 3511 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_max_descendants_show() local 3525 struct cgroup *cgrp; cgroup_max_descendants_write() local 3554 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_max_depth_show() local 3568 struct cgroup *cgrp; cgroup_max_depth_write() local 3597 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_events_show() local 3617 cgroup_extra_stat_show(struct seq_file *seq, struct cgroup *cgrp, int ssid) cgroup_extra_stat_show() argument 3638 struct cgroup __maybe_unused *cgrp = seq_css(seq)->cgroup; cpu_stat_show() local 3651 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_io_pressure_show() local 3658 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_memory_pressure_show() local 3665 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_cpu_pressure_show() local 3676 struct cgroup *cgrp; cgroup_pressure_write() local 3744 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_freeze_show() local 3754 struct cgroup *cgrp; cgroup_freeze_write() local 3816 struct cgroup *cgrp = of->kn->parent->priv; cgroup_file_write() local 3949 cgroup_add_file(struct cgroup_subsys_state *css, struct cgroup *cgrp, struct cftype *cft) cgroup_add_file() argument 3997 cgroup_addrm_files(struct cgroup_subsys_state *css, struct cgroup *cgrp, struct cftype cfts[], bool is_add) cgroup_addrm_files() argument 4046 struct cgroup *cgrp = css->cgroup; cgroup_apply_cftypes() local 4754 struct cgroup *cgrp = seq_css(s)->cgroup; __cgroup_procs_start() local 4778 struct cgroup *cgrp = seq_css(s)->cgroup; cgroup_procs_start() local 4799 cgroup_may_write(const struct cgroup *cgrp, struct super_block *sb) cgroup_may_write() argument 5051 struct cgroup *cgrp = css->cgroup; css_free_rwork_fn() local 5101 struct cgroup *cgrp = css->cgroup; css_release_work_fn() local 5162 init_and_link_css(struct cgroup_subsys_state *css, struct cgroup_subsys *ss, struct cgroup *cgrp) init_and_link_css() argument 5239 css_create(struct cgroup *cgrp, struct cgroup_subsys *ss) css_create() argument 5303 struct cgroup *cgrp, *tcgrp; cgroup_create() local 5443 struct cgroup *parent, *cgrp; cgroup_mkdir() local 5663 cgroup_bpf_offline(cgrp); global() variable 5673 struct cgroup *cgrp; cgroup_rmdir() local 5943 struct cgroup *cgrp; proc_cgroup_show() local 6015 struct cgroup *cgrp; cgroup_get_from_file() local 6138 struct cgroup *cgrp = kargs->cgrp; global() variable 6151 cgroup_put(cgrp); global() variable 6397 struct cgroup *cgrp; css_tryget_online_from_dir() local 6448 struct cgroup *cgrp; cgroup_get_from_path() local 6481 struct cgroup *cgrp; cgroup_get_from_fd() local 6572 struct cgroup *cgrp = sock_cgroup_ptr(skcd); cgroup_sk_clone() local 6585 struct cgroup *cgrp = sock_cgroup_ptr(skcd); cgroup_sk_free() local 6594 cgroup_bpf_attach(struct cgroup *cgrp, struct bpf_prog *prog, struct bpf_prog *replace_prog, struct bpf_cgroup_link *link, enum bpf_attach_type type, u32 flags) cgroup_bpf_attach() argument 6608 cgroup_bpf_detach(struct cgroup *cgrp, struct bpf_prog *prog, enum bpf_attach_type type) cgroup_bpf_detach() argument 6619 cgroup_bpf_query(struct cgroup *cgrp, const union bpf_attr *attr, union bpf_attr __user *uattr) cgroup_bpf_query() argument [all...] |
H A D | cgroup-v1.c | 197 void cgroup1_pidlist_destroy_all(struct cgroup *cgrp) in cgroup1_pidlist_destroy_all() argument 201 mutex_lock(&cgrp->pidlist_mutex); in cgroup1_pidlist_destroy_all() 202 list_for_each_entry_safe(l, tmp_l, &cgrp->pidlists, links) in cgroup1_pidlist_destroy_all() 204 mutex_unlock(&cgrp->pidlist_mutex); in cgroup1_pidlist_destroy_all() 207 BUG_ON(!list_empty(&cgrp->pidlists)); in cgroup1_pidlist_destroy_all() 278 static struct cgroup_pidlist *cgroup_pidlist_find(struct cgroup *cgrp, in cgroup_pidlist_find() argument 285 lockdep_assert_held(&cgrp->pidlist_mutex); in cgroup_pidlist_find() 287 list_for_each_entry(l, &cgrp->pidlists, links) in cgroup_pidlist_find() 299 static struct cgroup_pidlist *cgroup_pidlist_find_create(struct cgroup *cgrp, in cgroup_pidlist_find_create() argument 304 lockdep_assert_held(&cgrp in cgroup_pidlist_find_create() 327 pidlist_array_load(struct cgroup *cgrp, enum cgroup_filetype type, struct cgroup_pidlist **lp) pidlist_array_load() argument 398 struct cgroup *cgrp = seq_css(s)->cgroup; cgroup_pidlist_start() local 493 struct cgroup *cgrp; __cgroup1_procs_write() local [all...] |
H A D | cgroup-internal.h | 28 #define TRACE_CGROUP_PATH(type, cgrp, ...) \ 34 cgroup_path(cgrp, trace_cgroup_path, \ 36 trace_cgroup_##type(cgrp, trace_cgroup_path, \ 97 struct cgroup *cgrp; member 100 /* list of cgrp_cset_links anchored at cgrp->cset_links */ 186 static inline bool cgroup_is_dead(const struct cgroup *cgrp) in cgroup_is_dead() argument 188 return !(cgrp->self.flags & CSS_ONLINE); in cgroup_is_dead() 191 static inline bool notify_on_release(const struct cgroup *cgrp) in notify_on_release() argument 193 return test_bit(CGRP_NOTIFY_ON_RELEASE, &cgrp->flags); in notify_on_release() 224 bool cgroup_on_dfl(const struct cgroup *cgrp); [all...] |
/kernel/linux/linux-6.6/kernel/cgroup/ |
H A D | freezer.c | 14 static void cgroup_propagate_frozen(struct cgroup *cgrp, bool frozen) in cgroup_propagate_frozen() argument 24 while ((cgrp = cgroup_parent(cgrp))) { in cgroup_propagate_frozen() 26 cgrp->freezer.nr_frozen_descendants += desc; in cgroup_propagate_frozen() 27 if (!test_bit(CGRP_FROZEN, &cgrp->flags) && in cgroup_propagate_frozen() 28 test_bit(CGRP_FREEZE, &cgrp->flags) && in cgroup_propagate_frozen() 29 cgrp->freezer.nr_frozen_descendants == in cgroup_propagate_frozen() 30 cgrp->nr_descendants) { in cgroup_propagate_frozen() 31 set_bit(CGRP_FROZEN, &cgrp->flags); in cgroup_propagate_frozen() 32 cgroup_file_notify(&cgrp in cgroup_propagate_frozen() 52 cgroup_update_frozen(struct cgroup *cgrp) cgroup_update_frozen() argument 89 cgroup_inc_frozen_cnt(struct cgroup *cgrp) cgroup_inc_frozen_cnt() argument 97 cgroup_dec_frozen_cnt(struct cgroup *cgrp) cgroup_dec_frozen_cnt() argument 109 struct cgroup *cgrp; cgroup_enter_frozen() local 133 struct cgroup *cgrp; cgroup_leave_frozen() local 177 cgroup_do_freeze(struct cgroup *cgrp, bool freeze) cgroup_do_freeze() argument 260 cgroup_freeze(struct cgroup *cgrp, bool freeze) cgroup_freeze() argument [all...] |
H A D | cgroup.c | 167 struct cgroup_root cgrp_dfl_root = { .cgrp.rstat_cpu = &cgrp_dfl_root_rstat_cpu }; 239 static int cgroup_apply_control(struct cgroup *cgrp); 240 static void cgroup_finalize_control(struct cgroup *cgrp, int ret); 243 static int cgroup_destroy_locked(struct cgroup *cgrp); 244 static struct cgroup_subsys_state *css_create(struct cgroup *cgrp, 249 struct cgroup *cgrp, struct cftype cfts[], 276 * @cgrp: the cgroup of interest 317 bool cgroup_on_dfl(const struct cgroup *cgrp) in cgroup_on_dfl() argument 319 return cgrp->root == &cgrp_dfl_root; in cgroup_on_dfl() 353 static bool cgroup_has_tasks(struct cgroup *cgrp) in cgroup_has_tasks() argument 358 cgroup_is_threaded(struct cgroup *cgrp) cgroup_is_threaded() argument 364 cgroup_is_mixable(struct cgroup *cgrp) cgroup_is_mixable() argument 375 cgroup_can_be_thread_root(struct cgroup *cgrp) cgroup_can_be_thread_root() argument 397 cgroup_is_thread_root(struct cgroup *cgrp) cgroup_is_thread_root() argument 419 cgroup_is_valid_domain(struct cgroup *cgrp) cgroup_is_valid_domain() argument 437 cgroup_control(struct cgroup *cgrp) cgroup_control() argument 458 cgroup_ss_mask(struct cgroup *cgrp) cgroup_ss_mask() argument 485 cgroup_css(struct cgroup *cgrp, struct cgroup_subsys *ss) cgroup_css() argument 505 cgroup_e_css_by_mask(struct cgroup *cgrp, struct cgroup_subsys *ss) cgroup_e_css_by_mask() argument 539 cgroup_e_css(struct cgroup *cgrp, struct cgroup_subsys *ss) cgroup_e_css() argument 569 cgroup_get_e_css(struct cgroup *cgrp, struct cgroup_subsys *ss) cgroup_get_e_css() argument 595 cgroup_get_live(struct cgroup *cgrp) cgroup_get_live() argument 606 __cgroup_task_count(const struct cgroup *cgrp) __cgroup_task_count() argument 623 cgroup_task_count(const struct cgroup *cgrp) cgroup_task_count() argument 636 struct cgroup *cgrp = of->kn->parent->priv; of_css() local 788 cgroup_update_populated(struct cgroup *cgrp, bool populated) cgroup_update_populated() argument 1049 find_existing_css_set(struct css_set *old_cset, struct cgroup *cgrp, struct cgroup_subsys_state **template) find_existing_css_set() argument 1135 link_css_set(struct list_head *tmp_links, struct css_set *cset, struct cgroup *cgrp) link_css_set() argument 1168 find_css_set(struct css_set *old_cset, struct cgroup *cgrp) find_css_set() argument 1321 struct cgroup *cgrp = &root->cgrp; cgroup_destroy_root() local 1496 cgroup_file_name(struct cgroup *cgrp, const struct cftype *cft, char *buf) cgroup_file_name() argument 1593 struct cgroup *cgrp; cgroup_kn_unlock() local 1625 struct cgroup *cgrp; cgroup_kn_lock_live() local 1654 cgroup_rm_file(struct cgroup *cgrp, const struct cftype *cft) cgroup_rm_file() argument 1680 struct cgroup *cgrp = css->cgroup; css_clear_dir() local 1713 struct cgroup *cgrp = css->cgroup; css_populate_dir() local 1987 init_cgroup_housekeeping(struct cgroup *cgrp) init_cgroup_housekeeping() argument 2015 struct cgroup *cgrp = &root->cgrp; init_cgroup_root() local 2154 struct cgroup *cgrp; cgroup_do_get_tree() local 2332 cgroup_path_ns_locked(struct cgroup *cgrp, char *buf, size_t buflen, struct cgroup_namespace *ns) cgroup_path_ns_locked() argument 2340 cgroup_path_ns(struct cgroup *cgrp, char *buf, size_t buflen, struct cgroup_namespace *ns) cgroup_path_ns() argument 2958 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_controllers_show() local 2967 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_subtree_control_show() local 2982 cgroup_update_dfl_csses(struct cgroup *cgrp) cgroup_update_dfl_csses() argument 3093 cgroup_save_control(struct cgroup *cgrp) cgroup_save_control() argument 3113 cgroup_propagate_control(struct cgroup *cgrp) cgroup_propagate_control() argument 3134 cgroup_restore_control(struct cgroup *cgrp) cgroup_restore_control() argument 3149 struct cgroup *cgrp = css->cgroup; css_visible() local 3171 cgroup_apply_control_enable(struct cgroup *cgrp) cgroup_apply_control_enable() argument 3217 cgroup_apply_control_disable(struct cgroup *cgrp) cgroup_apply_control_disable() argument 3262 cgroup_apply_control(struct cgroup *cgrp) cgroup_apply_control() argument 3287 cgroup_finalize_control(struct cgroup *cgrp, int ret) cgroup_finalize_control() argument 3297 cgroup_vet_subtree_control_enable(struct cgroup *cgrp, u16 enable) cgroup_vet_subtree_control_enable() argument 3343 struct cgroup *cgrp, *child; cgroup_subtree_control_write() local 3442 cgroup_enable_threaded(struct cgroup *cgrp) cgroup_enable_threaded() argument 3491 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_type_show() local 3508 struct cgroup *cgrp; cgroup_type_write() local 3529 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_max_descendants_show() local 3543 struct cgroup *cgrp; cgroup_max_descendants_write() local 3572 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_max_depth_show() local 3586 struct cgroup *cgrp; cgroup_max_depth_write() local 3615 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_events_show() local 3644 cgroup_tryget_css(struct cgroup *cgrp, struct cgroup_subsys *ss) cgroup_tryget_css() argument 3660 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_extra_stat_show() local 3677 cgroup_local_stat_show(struct seq_file *seq, struct cgroup *cgrp, int ssid) cgroup_local_stat_show() argument 3710 struct cgroup __maybe_unused *cgrp = seq_css(seq)->cgroup; cpu_local_stat_show() local 3722 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_io_pressure_show() local 3729 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_memory_pressure_show() local 3736 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_cpu_pressure_show() local 3747 struct cgroup *cgrp; pressure_write() local 3800 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_irq_pressure_show() local 3816 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_pressure_show() local 3830 struct cgroup *cgrp; cgroup_pressure_write() local 3895 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_freeze_show() local 3905 struct cgroup *cgrp; cgroup_freeze_write() local 3927 __cgroup_kill(struct cgroup *cgrp) __cgroup_kill() argument 3957 cgroup_kill(struct cgroup *cgrp) cgroup_kill() argument 3973 struct cgroup *cgrp; cgroup_kill_write() local 4041 struct cgroup *cgrp = of->kn->parent->priv; cgroup_file_write() local 4174 cgroup_add_file(struct cgroup_subsys_state *css, struct cgroup *cgrp, struct cftype *cft) cgroup_add_file() argument 4222 cgroup_addrm_files(struct cgroup_subsys_state *css, struct cgroup *cgrp, struct cftype cfts[], bool is_add) cgroup_addrm_files() argument 4271 struct cgroup *cgrp = css->cgroup; cgroup_apply_cftypes() local 5009 struct cgroup *cgrp = seq_css(s)->cgroup; __cgroup_procs_start() local 5033 struct cgroup *cgrp = seq_css(s)->cgroup; cgroup_procs_start() local 5054 cgroup_may_write(const struct cgroup *cgrp, struct super_block *sb) cgroup_may_write() argument 5337 struct cgroup *cgrp = css->cgroup; css_free_rwork_fn() local 5387 struct cgroup *cgrp = css->cgroup; css_release_work_fn() local 5445 init_and_link_css(struct cgroup_subsys_state *css, struct cgroup_subsys *ss, struct cgroup *cgrp) init_and_link_css() argument 5522 css_create(struct cgroup *cgrp, struct cgroup_subsys *ss) css_create() argument 5576 struct cgroup *cgrp, *tcgrp; cgroup_create() local 5712 struct cgroup *parent, *cgrp; cgroup_mkdir() local 5932 cgroup_bpf_offline(cgrp); global() variable 5942 struct cgroup *cgrp; cgroup_rmdir() local 6194 struct cgroup *cgrp, *root_cgrp; cgroup_get_from_id() local 6249 struct cgroup *cgrp; proc_cgroup_show() local 6344 struct cgroup *cgrp = cgroup_v1v2_get_from_file(f); cgroup_get_from_file() local 6479 struct cgroup *cgrp = kargs->cgrp; global() variable 6492 cgroup_put(cgrp); global() variable 6770 struct cgroup *cgrp; css_tryget_online_from_dir() local 6821 struct cgroup *cgrp = ERR_PTR(-ENOENT); cgroup_get_from_path() local 6860 struct cgroup *cgrp; cgroup_v1v2_get_from_fd() local 6877 struct cgroup *cgrp = cgroup_v1v2_get_from_fd(fd); cgroup_get_from_fd() local 6968 struct cgroup *cgrp = sock_cgroup_ptr(skcd); cgroup_sk_clone() local 6981 struct cgroup *cgrp = sock_cgroup_ptr(skcd); cgroup_sk_free() local [all...] |
H A D | rstat.c | 13 static void cgroup_base_stat_flush(struct cgroup *cgrp, int cpu); 15 static struct cgroup_rstat_cpu *cgroup_rstat_cpu(struct cgroup *cgrp, int cpu) in cgroup_rstat_cpu() argument 17 return per_cpu_ptr(cgrp->rstat_cpu, cpu); in cgroup_rstat_cpu() 22 * @cgrp: target cgroup 25 * @cgrp's rstat_cpu on @cpu was updated. Put it on the parent's matching 29 __bpf_kfunc void cgroup_rstat_updated(struct cgroup *cgrp, int cpu) in cgroup_rstat_updated() argument 39 * instead of NULL, we can tell whether @cgrp is on the list by in cgroup_rstat_updated() 42 if (data_race(cgroup_rstat_cpu(cgrp, cpu)->updated_next)) in cgroup_rstat_updated() 47 /* put @cgrp and all ancestors on the corresponding updated lists */ in cgroup_rstat_updated() 49 struct cgroup_rstat_cpu *rstatc = cgroup_rstat_cpu(cgrp, cp in cgroup_rstat_updated() 166 bpf_rstat_flush(struct cgroup *cgrp, struct cgroup *parent, int cpu) bpf_rstat_flush() argument 233 cgroup_rstat_flush(struct cgroup *cgrp) cgroup_rstat_flush() argument 256 cgroup_rstat_flush_locked(cgrp); global() variable 268 cgroup_rstat_init(struct cgroup *cgrp) cgroup_rstat_init() argument 290 cgroup_rstat_exit(struct cgroup *cgrp) cgroup_rstat_exit() argument 343 cgroup_base_stat_flush(struct cgroup *cgrp, int cpu) cgroup_base_stat_flush() argument 383 cgroup_base_stat_cputime_account_begin(struct cgroup *cgrp, unsigned long *flags) cgroup_base_stat_cputime_account_begin() argument 392 cgroup_base_stat_cputime_account_end(struct cgroup *cgrp, struct cgroup_rstat_cpu *rstatc, unsigned long flags) cgroup_base_stat_cputime_account_end() argument 401 __cgroup_account_cputime(struct cgroup *cgrp, u64 delta_exec) __cgroup_account_cputime() argument 411 __cgroup_account_cputime_field(struct cgroup *cgrp, enum cpu_usage_stat index, u64 delta_exec) __cgroup_account_cputime_field() argument 482 struct cgroup *cgrp = seq_css(seq)->cgroup; cgroup_base_stat_cputime_show() local [all...] |
H A D | cgroup-v1.c | 196 void cgroup1_pidlist_destroy_all(struct cgroup *cgrp) in cgroup1_pidlist_destroy_all() argument 200 mutex_lock(&cgrp->pidlist_mutex); in cgroup1_pidlist_destroy_all() 201 list_for_each_entry_safe(l, tmp_l, &cgrp->pidlists, links) in cgroup1_pidlist_destroy_all() 203 mutex_unlock(&cgrp->pidlist_mutex); in cgroup1_pidlist_destroy_all() 206 BUG_ON(!list_empty(&cgrp->pidlists)); in cgroup1_pidlist_destroy_all() 277 static struct cgroup_pidlist *cgroup_pidlist_find(struct cgroup *cgrp, in cgroup_pidlist_find() argument 284 lockdep_assert_held(&cgrp->pidlist_mutex); in cgroup_pidlist_find() 286 list_for_each_entry(l, &cgrp->pidlists, links) in cgroup_pidlist_find() 298 static struct cgroup_pidlist *cgroup_pidlist_find_create(struct cgroup *cgrp, in cgroup_pidlist_find_create() argument 303 lockdep_assert_held(&cgrp in cgroup_pidlist_find_create() 326 pidlist_array_load(struct cgroup *cgrp, enum cgroup_filetype type, struct cgroup_pidlist **lp) pidlist_array_load() argument 397 struct cgroup *cgrp = seq_css(s)->cgroup; cgroup_pidlist_start() local 492 struct cgroup *cgrp; __cgroup1_procs_write() local [all...] |
H A D | cgroup-internal.h | 27 #define TRACE_CGROUP_PATH(type, cgrp, ...) \ 33 cgroup_path(cgrp, trace_cgroup_path, \ 35 trace_cgroup_##type(cgrp, trace_cgroup_path, \ 96 struct cgroup *cgrp; member 99 /* list of cgrp_cset_links anchored at cgrp->cset_links */ 184 static inline bool cgroup_is_dead(const struct cgroup *cgrp) in cgroup_is_dead() argument 186 return !(cgrp->self.flags & CSS_ONLINE); in cgroup_is_dead() 189 static inline bool notify_on_release(const struct cgroup *cgrp) in notify_on_release() argument 191 return test_bit(CGRP_NOTIFY_ON_RELEASE, &cgrp->flags); in notify_on_release() 222 bool cgroup_on_dfl(const struct cgroup *cgrp); [all...] |
/kernel/linux/linux-6.6/drivers/gpu/drm/nouveau/nvkm/engine/fifo/ |
H A D | cgrp.c | 22 #include "cgrp.h" 32 nvkm_cgrp_ectx_put(struct nvkm_cgrp *cgrp, struct nvkm_ectx **pectx) in nvkm_cgrp_ectx_put() argument 40 CGRP_TRACE(cgrp, "dtor ectx %d[%s]", engn->id, engn->engine->subdev.name); in nvkm_cgrp_ectx_put() 51 nvkm_cgrp_ectx_get(struct nvkm_cgrp *cgrp, struct nvkm_engn *engn, struct nvkm_ectx **pectx, in nvkm_cgrp_ectx_get() argument 63 ectx = nvkm_list_find(ectx, &cgrp->ectxs, head, ectx->engn == engn); in nvkm_cgrp_ectx_get() 71 CGRP_TRACE(cgrp, "ctor ectx %d[%s]", engn->id, engn->engine->subdev.name); in nvkm_cgrp_ectx_get() 78 list_add_tail(&ectx->head, &cgrp->ectxs); in nvkm_cgrp_ectx_get() 87 nvkm_cgrp_ectx_put(cgrp, pectx); in nvkm_cgrp_ectx_get() 93 nvkm_cgrp_vctx_put(struct nvkm_cgrp *cgrp, struct nvkm_vctx **pvctx) in nvkm_cgrp_vctx_put() argument 101 CGRP_TRACE(cgrp, "dto in nvkm_cgrp_vctx_put() 119 nvkm_cgrp_vctx_get(struct nvkm_cgrp *cgrp, struct nvkm_engn *engn, struct nvkm_chan *chan, struct nvkm_vctx **pvctx, struct nvkm_client *client) nvkm_cgrp_vctx_get() argument 174 struct nvkm_cgrp *cgrp = container_of(kref, typeof(*cgrp), kref); nvkm_cgrp_del() local 188 struct nvkm_cgrp *cgrp = *pcgrp; nvkm_cgrp_unref() local 198 nvkm_cgrp_ref(struct nvkm_cgrp *cgrp) nvkm_cgrp_ref() argument 209 struct nvkm_cgrp *cgrp = *pcgrp; nvkm_cgrp_put() local 222 struct nvkm_cgrp *cgrp; nvkm_cgrp_new() local [all...] |
H A D | chan.c | 26 #include "cgrp.h" 44 struct nvkm_cgrp *cgrp = chan->cgrp; in nvkm_chan_cctx_bind() local 45 struct nvkm_runl *runl = cgrp->runl; in nvkm_chan_cctx_bind() 56 if (cgrp->hw) in nvkm_chan_cctx_bind() 66 if (cgrp->hw) in nvkm_chan_cctx_bind() 80 if (refcount_dec_and_mutex_lock(&cctx->refs, &chan->cgrp->mutex)) { in nvkm_chan_cctx_put() 82 nvkm_cgrp_vctx_put(chan->cgrp, &cctx->vctx); in nvkm_chan_cctx_put() 85 mutex_unlock(&chan->cgrp->mutex); in nvkm_chan_cctx_put() 96 struct nvkm_cgrp *cgrp in nvkm_chan_cctx_get() local 166 struct nvkm_cgrp *cgrp = chan->cgrp; nvkm_chan_remove_locked() local 198 struct nvkm_cgrp *cgrp = chan->cgrp; nvkm_chan_insert() local 346 nvkm_chan_new_(const struct nvkm_chan_func *func, struct nvkm_runl *runl, int runq, struct nvkm_cgrp *cgrp, const char *name, bool priv, u32 devm, struct nvkm_vmm *vmm, struct nvkm_dmaobj *dmaobj, u64 offset, u64 length, struct nvkm_memory *userd, u64 ouserd, struct nvkm_chan **pchan) nvkm_chan_new_() argument [all...] |
H A D | runl.c | 23 #include "cgrp.h" 36 struct nvkm_cgrp *cgrp = NULL; in nvkm_engn_cgrp_get() local 48 cgrp = chan->cgrp; in nvkm_engn_cgrp_get() 50 cgrp = nvkm_runl_cgrp_get_cgid(engn->runl, id, pirqflags); in nvkm_engn_cgrp_get() 53 WARN_ON(!cgrp); in nvkm_engn_cgrp_get() 54 return cgrp; in nvkm_engn_cgrp_get() 61 struct nvkm_cgrp *cgrp, *gtmp; in nvkm_runl_rc() local 75 nvkm_runl_foreach_cgrp_safe(cgrp, gtmp, runl) { in nvkm_runl_rc() 76 state = atomic_cmpxchg(&cgrp in nvkm_runl_rc() 145 nvkm_runl_rc_cgrp(struct nvkm_cgrp *cgrp) nvkm_runl_rc_cgrp() argument 157 struct nvkm_cgrp *cgrp; nvkm_runl_rc_engn() local 231 struct nvkm_cgrp *cgrp; nvkm_runl_cgrp_get_cgid() local [all...] |
H A D | gk110.c | 25 #include "cgrp.h" 38 struct nvkm_cgrp *cgrp = chan->cgrp; in gk110_chan_preempt() local 40 if (cgrp->hw) { in gk110_chan_preempt() 41 cgrp->func->preempt(cgrp); in gk110_chan_preempt() 61 gk110_cgrp_preempt(struct nvkm_cgrp *cgrp) in gk110_cgrp_preempt() argument 63 nvkm_wr32(cgrp->runl->fifo->engine.subdev.device, 0x002634, 0x01000000 | cgrp->id); in gk110_cgrp_preempt() 72 gk110_runl_insert_cgrp(struct nvkm_cgrp *cgrp, struc argument [all...] |
/kernel/linux/linux-5.10/tools/perf/util/ |
H A D | cgroup.c | 42 * check if cgrp is already defined, if so we reuse it in evlist__find_cgroup() 45 if (!counter->cgrp) in evlist__find_cgroup() 47 if (!strcmp(counter->cgrp->name, str)) in evlist__find_cgroup() 48 return cgroup__get(counter->cgrp); in evlist__find_cgroup() 93 struct cgroup *cgrp = evlist__findnew_cgroup(evlist, str); in add_cgroup() local 96 if (!cgrp) in add_cgroup() 109 cgroup__put(cgrp); in add_cgroup() 112 counter->cgrp = cgrp; in add_cgroup() 124 void cgroup__put(struct cgroup *cgrp) in cgroup__put() argument 157 struct cgroup *cgrp = NULL; parse_cgroups() local 210 struct cgroup *cgrp = NULL; evlist__expand_cgroup() local 306 struct cgroup *cgrp; __cgroup__findnew() local 347 struct cgroup *cgrp; cgroup__findnew() local 357 struct cgroup *cgrp; cgroup__find() local 368 struct cgroup *cgrp; perf_env__purge_cgroups() local [all...] |
/kernel/linux/linux-6.6/tools/testing/selftests/bpf/progs/ |
H A D | cgrp_kfunc_failure.c | 16 * TP_PROTO(struct cgroup *cgrp, const char *path), 17 * TP_ARGS(cgrp, path) 20 static struct __cgrps_kfunc_map_value *insert_lookup_cgrp(struct cgroup *cgrp) in insert_lookup_cgrp() argument 24 status = cgrps_kfunc_map_insert(cgrp); in insert_lookup_cgrp() 28 return cgrps_kfunc_map_value_lookup(cgrp); in insert_lookup_cgrp() 33 int BPF_PROG(cgrp_kfunc_acquire_untrusted, struct cgroup *cgrp, const char *path) in BPF_PROG() argument 38 v = insert_lookup_cgrp(cgrp); in BPF_PROG() 43 acquired = bpf_cgroup_acquire(v->cgrp); in BPF_PROG() 52 int BPF_PROG(cgrp_kfunc_acquire_no_null_check, struct cgroup *cgrp, const char *path) in BPF_PROG() argument 56 acquired = bpf_cgroup_acquire(cgrp); in BPF_PROG() 68 BPF_PROG(cgrp_kfunc_acquire_fp, struct cgroup *cgrp, const char *path) BPF_PROG() argument 82 BPF_PROG(cgrp_kfunc_acquire_unsafe_kretprobe, struct cgroup *cgrp) BPF_PROG() argument 96 BPF_PROG(cgrp_kfunc_acquire_trusted_walked, struct cgroup *cgrp, const char *path) BPF_PROG() argument 110 BPF_PROG(cgrp_kfunc_acquire_null, struct cgroup *cgrp, const char *path) BPF_PROG() argument 124 BPF_PROG(cgrp_kfunc_acquire_unreleased, struct cgroup *cgrp, const char *path) BPF_PROG() argument 138 BPF_PROG(cgrp_kfunc_xchg_unreleased, struct cgroup *cgrp, const char *path) BPF_PROG() argument 158 BPF_PROG(cgrp_kfunc_rcu_get_release, struct cgroup *cgrp, const char *path) BPF_PROG() argument 179 BPF_PROG(cgrp_kfunc_release_untrusted, struct cgroup *cgrp, const char *path) BPF_PROG() argument 195 BPF_PROG(cgrp_kfunc_release_fp, struct cgroup *cgrp, const char *path) BPF_PROG() argument 207 BPF_PROG(cgrp_kfunc_release_null, struct cgroup *cgrp, const char *path) BPF_PROG() argument 241 BPF_PROG(cgrp_kfunc_release_unacquired, struct cgroup *cgrp, const char *path) BPF_PROG() argument [all...] |
H A D | cgrp_kfunc_success.c | 17 * TP_PROTO(struct cgroup *cgrp, const char *path), 18 * TP_ARGS(cgrp, path) 33 int BPF_PROG(test_cgrp_acquire_release_argument, struct cgroup *cgrp, const char *path) in BPF_PROG() argument 40 acquired = bpf_cgroup_acquire(cgrp); in BPF_PROG() 50 int BPF_PROG(test_cgrp_acquire_leave_in_map, struct cgroup *cgrp, const char *path) in BPF_PROG() argument 57 status = cgrps_kfunc_map_insert(cgrp); in BPF_PROG() 65 int BPF_PROG(test_cgrp_xchg_release, struct cgroup *cgrp, const char *path) in BPF_PROG() argument 74 status = cgrps_kfunc_map_insert(cgrp); in BPF_PROG() 80 v = cgrps_kfunc_map_value_lookup(cgrp); in BPF_PROG() 86 kptr = v->cgrp; in BPF_PROG() 108 BPF_PROG(test_cgrp_get_release, struct cgroup *cgrp, const char *path) BPF_PROG() argument 139 BPF_PROG(test_cgrp_get_ancestors, struct cgroup *cgrp, const char *path) BPF_PROG() argument 184 BPF_PROG(test_cgrp_from_id, struct cgroup *cgrp, const char *path) BPF_PROG() argument [all...] |
H A D | cgrp_ls_sleepable.c | 27 struct cgroup *cgrp = ctx->cgroup; in cgroup_iter() local 30 if (cgrp == NULL) in cgroup_iter() 33 ptr = bpf_cgrp_storage_get(&map_a, cgrp, 0, in cgroup_iter() 36 cgroup_id = cgrp->kn->id; in cgroup_iter() 44 struct cgroup *cgrp; in no_rcu_lock() local 52 cgrp = task->cgroups->dfl_cgrp; in no_rcu_lock() 53 ptr = bpf_cgrp_storage_get(&map_a, cgrp, 0, in no_rcu_lock() 56 cgroup_id = cgrp->kn->id; in no_rcu_lock() 64 struct cgroup *cgrp; in yes_rcu_lock() local 72 cgrp in yes_rcu_lock() [all...] |
/kernel/linux/linux-5.10/include/linux/ |
H A D | cgroup.h | 311 static inline u64 cgroup_id(struct cgroup *cgrp) in cgroup_id() argument 313 return cgrp->kn->id; in cgroup_id() 421 static inline void cgroup_get(struct cgroup *cgrp) in cgroup_get() argument 423 css_get(&cgrp->self); in cgroup_get() 426 static inline bool cgroup_tryget(struct cgroup *cgrp) in cgroup_tryget() argument 428 return css_tryget(&cgrp->self); in cgroup_tryget() 431 static inline void cgroup_put(struct cgroup *cgrp) in cgroup_put() argument 433 css_put(&cgrp->self); in cgroup_put() 555 static inline struct cgroup *cgroup_parent(struct cgroup *cgrp) in cgroup_parent() argument 557 struct cgroup_subsys_state *parent_css = cgrp in cgroup_parent() 573 cgroup_is_descendant(struct cgroup *cgrp, struct cgroup *ancestor) cgroup_is_descendant() argument 592 cgroup_ancestor(struct cgroup *cgrp, int ancestor_level) cgroup_ancestor() argument 620 cgroup_is_populated(struct cgroup *cgrp) cgroup_is_populated() argument 627 cgroup_ino(struct cgroup *cgrp) cgroup_ino() argument 656 cgroup_name(struct cgroup *cgrp, char *buf, size_t buflen) cgroup_name() argument 661 cgroup_path(struct cgroup *cgrp, char *buf, size_t buflen) cgroup_path() argument 666 pr_cont_cgroup_name(struct cgroup *cgrp) pr_cont_cgroup_name() argument 671 pr_cont_cgroup_path(struct cgroup *cgrp) pr_cont_cgroup_path() argument 676 cgroup_psi(struct cgroup *cgrp) cgroup_psi() argument 706 cgroup_id(struct cgroup *cgrp) cgroup_id() argument 730 cgroup_parent(struct cgroup *cgrp) cgroup_parent() argument 735 cgroup_psi(struct cgroup *cgrp) cgroup_psi() argument 779 struct cgroup *cgrp; cgroup_account_cputime() local 792 struct cgroup *cgrp; cgroup_account_cputime_field() local 925 cgroup_bpf_get(struct cgroup *cgrp) cgroup_bpf_get() argument 930 cgroup_bpf_put(struct cgroup *cgrp) cgroup_bpf_put() argument 937 cgroup_bpf_get(struct cgroup *cgrp) cgroup_bpf_get() argument 938 cgroup_bpf_put(struct cgroup *cgrp) cgroup_bpf_put() argument [all...] |
/kernel/linux/linux-6.6/tools/perf/util/ |
H A D | cgroup.c | 51 int read_cgroup_id(struct cgroup *cgrp) in read_cgroup_id() argument 64 scnprintf(path, PATH_MAX, "%s/%s", mnt, cgrp->name); in read_cgroup_id() 70 cgrp->id = handle.cgroup_id; in read_cgroup_id() 97 * check if cgrp is already defined, if so we reuse it in evlist__find_cgroup() 100 if (!counter->cgrp) in evlist__find_cgroup() 102 if (!strcmp(counter->cgrp->name, str)) in evlist__find_cgroup() 103 return cgroup__get(counter->cgrp); in evlist__find_cgroup() 148 struct cgroup *cgrp = evlist__findnew_cgroup(evlist, str); in add_cgroup() local 151 if (!cgrp) in add_cgroup() 164 cgroup__put(cgrp); in add_cgroup() 179 cgroup__put(struct cgroup *cgrp) cgroup__put() argument 356 struct cgroup *cgrp = NULL; parse_cgroups() local 414 struct cgroup *cgrp = NULL; evlist__expand_cgroup() local 516 struct cgroup *cgrp; __cgroup__findnew() local 557 struct cgroup *cgrp; cgroup__findnew() local 567 struct cgroup *cgrp; cgroup__find() local 578 struct cgroup *cgrp; perf_env__purge_cgroups() local [all...] |
/kernel/linux/linux-6.6/include/linux/ |
H A D | cgroup.h | 325 static inline u64 cgroup_id(const struct cgroup *cgrp) in cgroup_id() argument 327 return cgrp->kn->id; in cgroup_id() 350 static inline void cgroup_get(struct cgroup *cgrp) in cgroup_get() argument 352 css_get(&cgrp->self); in cgroup_get() 355 static inline bool cgroup_tryget(struct cgroup *cgrp) in cgroup_tryget() argument 357 return css_tryget(&cgrp->self); in cgroup_tryget() 360 static inline void cgroup_put(struct cgroup *cgrp) in cgroup_put() argument 362 css_put(&cgrp->self); in cgroup_put() 495 static inline struct cgroup *cgroup_parent(struct cgroup *cgrp) in cgroup_parent() argument 497 struct cgroup_subsys_state *parent_css = cgrp in cgroup_parent() 513 cgroup_is_descendant(struct cgroup *cgrp, struct cgroup *ancestor) cgroup_is_descendant() argument 532 cgroup_ancestor(struct cgroup *cgrp, int ancestor_level) cgroup_ancestor() argument 558 cgroup_is_populated(struct cgroup *cgrp) cgroup_is_populated() argument 565 cgroup_ino(struct cgroup *cgrp) cgroup_ino() argument 594 cgroup_name(struct cgroup *cgrp, char *buf, size_t buflen) cgroup_name() argument 599 cgroup_path(struct cgroup *cgrp, char *buf, size_t buflen) cgroup_path() argument 604 pr_cont_cgroup_name(struct cgroup *cgrp) pr_cont_cgroup_name() argument 609 pr_cont_cgroup_path(struct cgroup *cgrp) pr_cont_cgroup_path() argument 642 cgroup_id(const struct cgroup *cgrp) cgroup_id() argument 668 cgroup_parent(struct cgroup *cgrp) cgroup_parent() argument 716 struct cgroup *cgrp; cgroup_account_cputime() local 729 struct cgroup *cgrp; cgroup_account_cputime_field() local 841 cgroup_bpf_get(struct cgroup *cgrp) cgroup_bpf_get() argument 846 cgroup_bpf_put(struct cgroup *cgrp) cgroup_bpf_put() argument 853 cgroup_bpf_get(struct cgroup *cgrp) cgroup_bpf_get() argument 854 cgroup_bpf_put(struct cgroup *cgrp) cgroup_bpf_put() argument [all...] |
/kernel/linux/linux-5.10/include/trace/events/ |
H A D | cgroup.h | 56 TP_PROTO(struct cgroup *cgrp, const char *path), 58 TP_ARGS(cgrp, path), 68 __entry->root = cgrp->root->hierarchy_id; 69 __entry->id = cgroup_id(cgrp); 70 __entry->level = cgrp->level; 80 TP_PROTO(struct cgroup *cgrp, const char *path), 82 TP_ARGS(cgrp, path) 87 TP_PROTO(struct cgroup *cgrp, const char *path), 89 TP_ARGS(cgrp, path) 94 TP_PROTO(struct cgroup *cgrp, cons [all...] |
/kernel/linux/linux-6.6/include/trace/events/ |
H A D | cgroup.h | 56 TP_PROTO(struct cgroup *cgrp, const char *path), 58 TP_ARGS(cgrp, path), 68 __entry->root = cgrp->root->hierarchy_id; 69 __entry->id = cgroup_id(cgrp); 70 __entry->level = cgrp->level; 80 TP_PROTO(struct cgroup *cgrp, const char *path), 82 TP_ARGS(cgrp, path) 87 TP_PROTO(struct cgroup *cgrp, const char *path), 89 TP_ARGS(cgrp, path) 94 TP_PROTO(struct cgroup *cgrp, cons [all...] |
/kernel/linux/linux-6.6/kernel/bpf/ |
H A D | cgroup.c | 31 bpf_prog_run_array_cg(const struct cgroup_bpf *cgrp, in bpf_prog_run_array_cg() argument 46 array = rcu_dereference(cgrp->effective[atype]); in bpf_prog_run_array_cg() 71 struct cgroup *cgrp; in __cgroup_bpf_run_lsm_sock() local 80 cgrp = sock_cgroup_ptr(&sk->sk_cgrp_data); in __cgroup_bpf_run_lsm_sock() 81 if (likely(cgrp)) in __cgroup_bpf_run_lsm_sock() 82 ret = bpf_prog_run_array_cg(&cgrp->bpf, in __cgroup_bpf_run_lsm_sock() 93 struct cgroup *cgrp; in __cgroup_bpf_run_lsm_socket() local 102 cgrp = sock_cgroup_ptr(&sock->sk->sk_cgrp_data); in __cgroup_bpf_run_lsm_socket() 103 if (likely(cgrp)) in __cgroup_bpf_run_lsm_socket() 104 ret = bpf_prog_run_array_cg(&cgrp in __cgroup_bpf_run_lsm_socket() 114 struct cgroup *cgrp; __cgroup_bpf_run_lsm_current() local 192 cgroup_bpf_offline(struct cgroup *cgrp) cgroup_bpf_offline() argument 206 bpf_cgroup_storages_alloc(struct bpf_cgroup_storage *storages[], struct bpf_cgroup_storage *new_storages[], enum bpf_attach_type type, struct bpf_prog *prog, struct cgroup *cgrp) bpf_cgroup_storages_alloc() argument 249 bpf_cgroup_storages_link(struct bpf_cgroup_storage *storages[], struct cgroup *cgrp, enum bpf_attach_type attach_type) bpf_cgroup_storages_link() argument 277 struct cgroup *p, *cgrp = container_of(work, struct cgroup, cgroup_bpf_release() local 334 struct cgroup *cgrp = container_of(ref, struct cgroup, bpf.refcnt); cgroup_bpf_release_fn() local 372 hierarchy_allows_attach(struct cgroup *cgrp, enum cgroup_bpf_attach_type atype) hierarchy_allows_attach() argument 401 compute_effective_progs(struct cgroup *cgrp, enum cgroup_bpf_attach_type atype, struct bpf_prog_array **array) compute_effective_progs() argument 445 activate_effective_progs(struct cgroup *cgrp, enum cgroup_bpf_attach_type atype, struct bpf_prog_array *old_array) activate_effective_progs() argument 461 cgroup_bpf_inherit(struct cgroup *cgrp) cgroup_bpf_inherit() argument 504 update_effective_progs(struct cgroup *cgrp, enum cgroup_bpf_attach_type atype) update_effective_progs() argument 607 __cgroup_bpf_attach(struct cgroup *cgrp, struct bpf_prog *prog, struct bpf_prog *replace_prog, struct bpf_cgroup_link *link, enum bpf_attach_type type, u32 flags) __cgroup_bpf_attach() argument 724 cgroup_bpf_attach(struct cgroup *cgrp, struct bpf_prog *prog, struct bpf_prog *replace_prog, struct bpf_cgroup_link *link, enum bpf_attach_type type, u32 flags) cgroup_bpf_attach() argument 741 replace_effective_prog(struct cgroup *cgrp, enum cgroup_bpf_attach_type atype, struct bpf_cgroup_link *link) replace_effective_prog() argument 793 __cgroup_bpf_replace(struct cgroup *cgrp, struct bpf_cgroup_link *link, struct bpf_prog *new_prog) __cgroup_bpf_replace() argument 893 purge_effective_progs(struct cgroup *cgrp, struct bpf_prog *prog, struct bpf_cgroup_link *link, enum cgroup_bpf_attach_type atype) purge_effective_progs() argument 950 __cgroup_bpf_detach(struct cgroup *cgrp, struct bpf_prog *prog, struct bpf_cgroup_link *link, enum bpf_attach_type type) __cgroup_bpf_detach() argument 1008 cgroup_bpf_detach(struct cgroup *cgrp, struct bpf_prog *prog, enum bpf_attach_type type) cgroup_bpf_detach() argument 1020 __cgroup_bpf_query(struct cgroup *cgrp, const union bpf_attr *attr, union bpf_attr __user *uattr) __cgroup_bpf_query() argument 1119 cgroup_bpf_query(struct cgroup *cgrp, const union bpf_attr *attr, union bpf_attr __user *uattr) cgroup_bpf_query() argument 1134 struct cgroup *cgrp; cgroup_bpf_prog_attach() local 1162 struct cgroup *cgrp; cgroup_bpf_prog_detach() local 1278 struct cgroup *cgrp; cgroup_bpf_link_attach() local 1321 struct cgroup *cgrp; cgroup_bpf_prog_query() local 1364 struct cgroup *cgrp; __cgroup_bpf_run_filter_skb() local 1441 struct cgroup *cgrp = sock_cgroup_ptr(&sk->sk_cgrp_data); __cgroup_bpf_run_filter_sk() local 1479 struct cgroup *cgrp; __cgroup_bpf_run_filter_sock_addr() local 1527 struct cgroup *cgrp = sock_cgroup_ptr(&sk->sk_cgrp_data); __cgroup_bpf_run_filter_sock_ops() local 1537 struct cgroup *cgrp; __cgroup_bpf_check_dev_permission() local 1711 struct cgroup *cgrp; __cgroup_bpf_run_filter_sysctl() local 1805 struct cgroup *cgrp = sock_cgroup_ptr(&sk->sk_cgrp_data); __cgroup_bpf_run_filter_setsockopt() local 1896 struct cgroup *cgrp = sock_cgroup_ptr(&sk->sk_cgrp_data); __cgroup_bpf_run_filter_getsockopt() local 1978 struct cgroup *cgrp = sock_cgroup_ptr(&sk->sk_cgrp_data); __cgroup_bpf_run_filter_getsockopt_kern() local [all...] |
/kernel/linux/linux-5.10/kernel/bpf/ |
H A D | cgroup.c | 25 void cgroup_bpf_offline(struct cgroup *cgrp) in cgroup_bpf_offline() argument 27 cgroup_get(cgrp); in cgroup_bpf_offline() 28 percpu_ref_kill(&cgrp->bpf.refcnt); in cgroup_bpf_offline() 43 struct cgroup *cgrp) in bpf_cgroup_storages_alloc() 49 key.cgroup_inode_id = cgroup_id(cgrp); in bpf_cgroup_storages_alloc() 83 struct cgroup *cgrp, in bpf_cgroup_storages_link() 89 bpf_cgroup_storage_link(storages[stype], cgrp, attach_type); in bpf_cgroup_storages_link() 110 struct cgroup *p, *cgrp = container_of(work, struct cgroup, in cgroup_bpf_release() local 113 struct list_head *storages = &cgrp->bpf.storages; in cgroup_bpf_release() 120 for (type = 0; type < ARRAY_SIZE(cgrp in cgroup_bpf_release() 39 bpf_cgroup_storages_alloc(struct bpf_cgroup_storage *storages[], struct bpf_cgroup_storage *new_storages[], enum bpf_attach_type type, struct bpf_prog *prog, struct cgroup *cgrp) bpf_cgroup_storages_alloc() argument 82 bpf_cgroup_storages_link(struct bpf_cgroup_storage *storages[], struct cgroup *cgrp, enum bpf_attach_type attach_type) bpf_cgroup_storages_link() argument 160 struct cgroup *cgrp = container_of(ref, struct cgroup, bpf.refcnt); cgroup_bpf_release_fn() local 198 hierarchy_allows_attach(struct cgroup *cgrp, enum bpf_attach_type type) hierarchy_allows_attach() argument 227 compute_effective_progs(struct cgroup *cgrp, enum bpf_attach_type type, struct bpf_prog_array **array) compute_effective_progs() argument 271 activate_effective_progs(struct cgroup *cgrp, enum bpf_attach_type type, struct bpf_prog_array *old_array) activate_effective_progs() argument 287 cgroup_bpf_inherit(struct cgroup *cgrp) cgroup_bpf_inherit() argument 330 update_effective_progs(struct cgroup *cgrp, enum bpf_attach_type type) update_effective_progs() argument 433 __cgroup_bpf_attach(struct cgroup *cgrp, struct bpf_prog *prog, struct bpf_prog *replace_prog, struct bpf_cgroup_link *link, enum bpf_attach_type type, u32 flags) __cgroup_bpf_attach() argument 522 replace_effective_prog(struct cgroup *cgrp, enum bpf_attach_type type, struct bpf_cgroup_link *link) replace_effective_prog() argument 573 __cgroup_bpf_replace(struct cgroup *cgrp, struct bpf_cgroup_link *link, struct bpf_prog *new_prog) __cgroup_bpf_replace() argument 666 purge_effective_progs(struct cgroup *cgrp, struct bpf_prog *prog, struct bpf_cgroup_link *link, enum bpf_attach_type type) purge_effective_progs() argument 723 __cgroup_bpf_detach(struct cgroup *cgrp, struct bpf_prog *prog, struct bpf_cgroup_link *link, enum bpf_attach_type type) __cgroup_bpf_detach() argument 764 __cgroup_bpf_query(struct cgroup *cgrp, const union bpf_attr *attr, union bpf_attr __user *uattr) __cgroup_bpf_query() argument 818 struct cgroup *cgrp; cgroup_bpf_prog_attach() local 846 struct cgroup *cgrp; cgroup_bpf_prog_detach() local 960 struct cgroup *cgrp; cgroup_bpf_link_attach() local 1003 struct cgroup *cgrp; cgroup_bpf_prog_query() local 1046 struct cgroup *cgrp; __cgroup_bpf_run_filter_skb() local 1095 struct cgroup *cgrp = sock_cgroup_ptr(&sk->sk_cgrp_data); __cgroup_bpf_run_filter_sk() local 1127 struct cgroup *cgrp; __cgroup_bpf_run_filter_sock_addr() local 1168 struct cgroup *cgrp = sock_cgroup_ptr(&sk->sk_cgrp_data); __cgroup_bpf_run_filter_sock_ops() local 1180 struct cgroup *cgrp; __cgroup_bpf_check_dev_permission() local 1295 struct cgroup *cgrp; __cgroup_bpf_run_filter_sysctl() local 1339 __cgroup_bpf_prog_array_is_empty(struct cgroup *cgrp, enum bpf_attach_type attach_type) __cgroup_bpf_prog_array_is_empty() argument 1383 struct cgroup *cgrp = sock_cgroup_ptr(&sk->sk_cgrp_data); __cgroup_bpf_run_filter_setsockopt() local 1461 struct cgroup *cgrp = sock_cgroup_ptr(&sk->sk_cgrp_data); __cgroup_bpf_run_filter_getsockopt() local 1554 struct cgroup *cgrp = sock_cgroup_ptr(&sk->sk_cgrp_data); __cgroup_bpf_run_filter_getsockopt_kern() local [all...] |