Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 14 files:

Smatch caller information:

mm/memcontrol.c get_mem_cgroup_from_mm() -> css_get()

Type Parameter Key Value
PARAM_VALUE 0 css 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &encl->lock
HALF_LOCKED2 rcu_read

mm/memcontrol.c mem_cgroup_css_online() -> css_get()

Type Parameter Key Value
PARAM_VALUE 0 css 4096-ptr_max
PARAM_VALUE 0 css->cgroup 4096-ptr_max
PARAM_VALUE 0 css->cgroup->self.flags 0,2-u32max
PARAM_VALUE 0 css->cgroup->self.refcnt.percpu_count_ptr 1-u64max
PARAM_VALUE 0 css->children.next 4096-ptr_max
PARAM_VALUE 0 css->children.next->next 4096-ptr_max
PARAM_VALUE 0 css->children.prev 4096-ptr_max
PARAM_VALUE 0 css->children.prev->next 4096-ptr_max
PARAM_VALUE 0 css->children.prev->prev 4096-ptr_max
PARAM_VALUE 0 css->destroy_rwork.rcu.func 0
PARAM_VALUE 0 css->destroy_rwork.rcu.next 0
PARAM_VALUE 0 css->destroy_rwork.work.data.counter 0
PARAM_VALUE 0 css->destroy_rwork.work.entry.next 0
PARAM_VALUE 0 css->destroy_rwork.work.entry.prev 0
PARAM_VALUE 0 css->destroy_rwork.work.func 0
PARAM_VALUE 0 css->destroy_rwork.wq 0
PARAM_VALUE 0 css->destroy_work.data.counter 0
PARAM_VALUE 0 css->destroy_work.entry.next 0
PARAM_VALUE 0 css->destroy_work.entry.prev 0
PARAM_VALUE 0 css->destroy_work.func 0
PARAM_VALUE 0 css->flags 0-1
PARAM_VALUE 0 css->id 0-s32max
PARAM_VALUE 0 css->kill_finish_work.func 0
PARAM_VALUE 0 css->nr_descendants 0
PARAM_VALUE 0 css->nr_populated_children 0
PARAM_VALUE 0 css->nr_populated_csets 0
PARAM_VALUE 0 css->online_cnt.counter 0
PARAM_VALUE 0 css->parent->refcnt.percpu_count_ptr 1-u64max
PARAM_VALUE 0 css->refcnt.data 0,4096-ptr_max
PARAM_VALUE 0 css->refcnt.data->confirm_switch 0
PARAM_VALUE 0 css->refcnt.data->count.counter s64min-(-9223372036854775807),0-s64max
PARAM_VALUE 0 css->refcnt.data->ref 4096-ptr_max
PARAM_VALUE 0 css->refcnt.percpu_count_ptr 0,4096-18446744073709547523
PARAM_VALUE 0 css->rstat_cpu 0,4096-ptr_max
PARAM_VALUE 0 css->rstat_flush_next 0
PARAM_VALUE 0 css->sibling.next 4096-ptr_max
PARAM_VALUE 0 css->sibling.next->next 4096-ptr_max
PARAM_VALUE 0 css->sibling.prev->next 4096-ptr_max
PARAM_VALUE 0 css->sibling.prev->prev 4096-ptr_max
PARAM_VALUE 0 css->ss 4096-ptr_max
PARAM_VALUE 0 css->ss->attach 0,2246200204970172416,2360154984384167936,3019800169015222272,5185209237867978752,6679637330912739328,6722154200619556864,8437287443062427648
PARAM_VALUE 0 css->ss->bind 0,5398039129788481536
PARAM_VALUE 0 css->ss->can_attach 0,1539697653209010176,2596895394050748416,3636412751287525376
PARAM_VALUE 0 css->ss->can_fork 0,5638613885127380992,6961295853237211136
PARAM_VALUE 0 css->ss->cancel_attach 0,1511532066655358976,4508251095385354240,4853635904863272960
PARAM_VALUE 0 css->ss->cancel_fork 0,5691029669975453696,7415222397819719680
PARAM_VALUE 0 css->ss->css_alloc 0,4096-ptr_max
PARAM_VALUE 0 css->ss->css_extra_stat_show 0,3458187449253036032
PARAM_VALUE 0 css->ss->css_free 0,4096-ptr_max
PARAM_VALUE 0 css->ss->css_killed 0,8358574337692954624
PARAM_VALUE 0 css->ss->css_local_stat_show 0,3145639222211608576
PARAM_VALUE 0 css->ss->css_offline 0,4096-ptr_max
PARAM_VALUE 0 css->ss->css_online 4096-ptr_max
PARAM_VALUE 0 css->ss->css_released 0,4856339823753781248,9148075606814478336
PARAM_VALUE 0 css->ss->css_reset 0,7327419871178485760
PARAM_VALUE 0 css->ss->css_rstat_flush 0,4093796338165313536,4446828206639517696
PARAM_VALUE 0 css->ss->depends_on 0,16
PARAM_VALUE 0 css->ss->dfl_cftypes 0,4096-ptr_max
PARAM_VALUE 0 css->ss->exit 0,7702225149594865664,8372473530682335232
PARAM_VALUE 0 css->ss->fork 0,4540472734013444096,7578242414286561280,8835910921598877696
PARAM_VALUE 0 css->ss->id 0-15
PARAM_VALUE 0 css->ss->legacy_cftypes 0,4096-ptr_max
PARAM_VALUE 0 css->ss->release 0,1980470231377797120
BUF_SIZE 0 css 392
CAPPED_DATA 0 css 1
CAPPED_DATA 0 css->id 1
DATA_SOURCE 0 css $0
HARD_MAX 0 css->flags 1
MEM_ZERO 0 css
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &cgroup_mutex

mm/memcontrol.c mem_cgroup_get_oom_group() -> css_get()

Type Parameter Key Value
PARAM_VALUE 0 css 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &oom_lock
LOCK2 rcu_read

mm/memcontrol.c mem_cgroup_sk_inherit() -> css_get()

Type Parameter Key Value
PARAM_VALUE 0 css 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 newsk
HALF_LOCKED2 sk

mm/memcontrol.c refill_stock() -> css_get()

Type Parameter Key Value
PARAM_VALUE 0 css 1-u64max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

kernel/kthread.c kthread_associate_blkcg() -> css_get()

Type Parameter Key Value
PARAM_VALUE 0 css 1-u64max
DATA_SOURCE 0 css $0
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

mm/backing-dev.c cgwb_create() -> css_get()

Type Parameter Key Value
PARAM_VALUE 0 css 4096-ptr_max
PARAM_VALUE 0 css->parent 1-u64max
BUF_SIZE 0 css (-1),392
BUF_SIZE 0 css (-1),392
CAPPED_DATA 0 css->id 1
DATA_SOURCE 0 css $1
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
LOCK2 global &cgwb_lock

mm/backing-dev.c cgwb_create() -> css_get()

Type Parameter Key Value
PARAM_VALUE 0 css 4096-ptr_max
CAPPED_DATA 0 css 1
DATA_SOURCE 0 css r cgroup_get_e_css
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 flags
LOCK2 global &cgwb_lock

fs/btrfs/inode.c run_delalloc_compressed() -> css_get()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mapping->invalidate_lock

mm/hugetlb.c copy_hugetlb_cgroup_uncharge_info() -> css_get()

Type Parameter Key Value
PARAM_VALUE 0 css 1-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &resv->lock
TYPE_LOCK (struct resv_map)->lock

mm/hugetlb.c record_hugetlb_cgroup_uncharge_info() -> css_get()

Type Parameter Key Value
PARAM_VALUE 0 css 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &resv->lock
TYPE_LOCK (struct resv_map)->lock

mm/hugetlb.c resv_map_dup_hugetlb_cgroup_uncharge_info() -> css_get()

Type Parameter Key Value
PARAM_VALUE 0 css 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev->attach_lock
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &oldmm->mmap_lock

drivers/block/loop.c loop_queue_work() -> css_get()

Type Parameter Key Value
PARAM_VALUE 0 css 4096-ptr_max
BUF_SIZE 0 css (-1)-0,392
BUF_SIZE 0 css (-1)-0,392
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &lo->lo_work_lock
LOCK2 irq
HALF_LOCKED2 __tag_set->srcu
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct loop_device)->lo_work_lock

kernel/bpf/cgroup_iter.c cgroup_iter_seq_init() -> css_get()

Type Parameter Key Value
BUF_SIZE 0 css 392
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

kernel/cgroup/dmem.c dmem_cgroup_try_charge() -> css_get()

Type Parameter Key Value
NOCHECK_CALL

kernel/cgroup/cpuset.c dl_rebuild_rd_accounting() -> css_get()

Type Parameter Key Value
PARAM_VALUE 0 css 2371988510885339136
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &sched_domains_mutex
LOCK2 rcu_read
HALF_LOCKED2 global &cpuset_mutex

kernel/bpf/cgroup.c cgroup_get() -> css_get()

Type Parameter Key Value
PARAM_VALUE 0 css 4096-ptr_max
NOCHECK_CALL

kernel/cgroup/cgroup.c cgroup_get() -> css_get()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 rcu_read

kernel/cgroup/cgroup.c cgroup_get_e_css() -> css_get()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 rcu_read
HALF_LOCKED2 &of->mutex

kernel/cgroup/cgroup.c css_update_populated() -> css_get()

Type Parameter Key Value
PARAM_VALUE 0 css 4096-ptr_max
PARAM_VALUE 0 css->flags 16-u32max
PARAM_VALUE 0 css->nr_populated_children 0
PARAM_VALUE 0 css->nr_populated_csets 0
DATA_SOURCE 0 css $0 [m]
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &css_set_lock
HALF_LOCKED2 irq

kernel/cgroup/cgroup.c find_css_set() -> css_get()

Type Parameter Key Value
PARAM_VALUE 0 css 4096-ptr_max
PARAM_VALUE 0 css->cgroup->e_csets 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &css_set_lock
LOCK2 irq
HALF_LOCKED2 global &cgroup_mutex

kernel/cgroup/cgroup.c init_and_link_css() -> css_get()

Type Parameter Key Value
DATA_SOURCE 0 css r cgroup_css
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &cgroup_mutex

kernel/cgroup/cgroup.c kill_css_finish() -> css_get()

Type Parameter Key Value
PARAM_VALUE 0 css 4096-ptr_max
BUF_SIZE 0 css (-1),392
BUF_SIZE 0 css (-1),392
DATA_SOURCE 0 css $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &cgroup_mutex

mm/memcontrol-v1.c memcg1_oom_prepare() -> css_get()

Type Parameter Key Value
PARAM_VALUE 0 css 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL