Defined in 2 files as a function:

Referenced in 4 files:

Smatch caller information:

mm/memcontrol.c __memcg_slab_post_alloc_hook() -> get_mem_cgroup_from_objcg()

Type Parameter Key Value
PARAM_VALUE 0 objcg 4096-ptr_max
PARAM_VALUE 0 objcg->is_root 0
DATA_SOURCE 0 objcg r current_obj_cgroup
RX_PATH
TASK_NOT_RUNNING

mm/memcontrol.c drain_obj_stock_slot() -> get_mem_cgroup_from_objcg()

Type Parameter Key Value
PARAM_VALUE 0 objcg 1-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

mm/memcontrol.c obj_cgroup_charge_pages() -> get_mem_cgroup_from_objcg()

Type Parameter Key Value
PARAM_VALUE 0 objcg 4096-ptr_max
PARAM_VALUE 0 objcg->is_root 0
CAPPED_DATA 0 objcg 1
DATA_SOURCE 0 objcg $0
RX_PATH
TASK_NOT_RUNNING

mm/memcontrol.c obj_cgroup_may_zswap() -> get_mem_cgroup_from_objcg()

Type Parameter Key Value
PARAM_VALUE 0 objcg 4096-ptr_max
PARAM_VALUE 0 objcg->refcnt.percpu_count_ptr 1-u64max
DATA_SOURCE 0 objcg $0
RX_PATH
TASK_NOT_RUNNING

mm/memcontrol.c obj_cgroup_release() -> get_mem_cgroup_from_objcg()

Type Parameter Key Value
PARAM_VALUE 0 objcg 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &ctx->map_changing_lock
HALF_LOCKED2 &packet->qp->r_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &q->queue_lock
HALF_LOCKED2 &qp->s_lock
HALF_LOCKED2 &tg_pt_gp->tg_pt_gp_lock
HALF_LOCKED2 &tg_pt_gp->tg_pt_gp_transition_mutex
HALF_LOCKED2 flags
HALF_LOCKED2 global &mf_mutex
HALF_LOCKED2 global &pcpu_lock
HALF_LOCKED2 irq

mm/memcontrol.c obj_cgroup_uncharge_pages() -> get_mem_cgroup_from_objcg()

Type Parameter Key Value
PARAM_VALUE 0 objcg 1-u64max
CAPPED_DATA 0 objcg 1
DATA_SOURCE 0 objcg $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

kernel/bpf/syscall.c bpf_map_get_memcg() -> get_mem_cgroup_from_objcg()

Type Parameter Key Value
PARAM_VALUE 0 objcg 1-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 flags

mm/zswap.c zswap_store() -> get_mem_cgroup_from_objcg()

Type Parameter Key Value
PARAM_VALUE 0 objcg 4096-ptr_max
PARAM_VALUE 0 objcg->memcg->css.flags 1-u32max
PARAM_VALUE 0 objcg->memcg->css.refcnt.data 0,4096-ptr_max
PARAM_VALUE 0 objcg->refcnt.percpu_count_ptr 1-u64max
DATA_SOURCE 0 objcg r get_obj_cgroup_from_folio
RX_PATH
TASK_NOT_RUNNING

mm/zswap.c zswap_store() -> get_mem_cgroup_from_objcg()

Type Parameter Key Value
PARAM_VALUE 0 objcg 4096-ptr_max
PARAM_VALUE 0 objcg->refcnt.percpu_count_ptr 1-u64max
DATA_SOURCE 0 objcg r get_obj_cgroup_from_folio
RX_PATH
TASK_NOT_RUNNING

kernel/bpf/memalloc.c get_memcg() -> get_mem_cgroup_from_objcg()

Type Parameter Key Value
PARAM_VALUE 0 objcg 1-u64max