Defined in 2 files as a function:

Referenced in 4 files:

Smatch caller information:

mm/memcontrol.c __memcg_kmem_charge_page() -> obj_cgroup_is_root()

Type Parameter Key Value
PARAM_VALUE 0 objcg 1-u64max
DATA_SOURCE 0 objcg r current_obj_cgroup
RX_PATH
TASK_NOT_RUNNING

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

Type Parameter Key Value
PARAM_VALUE 0 objcg 1-u64max
DATA_SOURCE 0 objcg r current_obj_cgroup
RX_PATH
TASK_NOT_RUNNING

mm/memcontrol.c charge_memcg() -> obj_cgroup_is_root()

Type Parameter Key Value
PARAM_VALUE 0 objcg 0,4096-ptr_max
DATA_SOURCE 0 objcg r get_obj_cgroup_from_memcg
RX_PATH
TASK_NOT_RUNNING

mm/memcontrol.c mem_cgroup_migrate() -> obj_cgroup_is_root()

Type Parameter Key Value
PARAM_VALUE 0 objcg 0,4096-ptr_max
DATA_SOURCE 0 objcg r get_migration_objcg
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ai->migrate_lock
HALF_LOCKED2 &ctx->completion_lock
HALF_LOCKED2 &ctx->ring_lock
HALF_LOCKED2 flags

mm/memcontrol.c mem_cgroup_migrate() -> obj_cgroup_is_root()

Type Parameter Key Value
PARAM_VALUE 0 objcg 8-u64max
DATA_SOURCE 0 objcg r folio_objcg
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ai->migrate_lock
HALF_LOCKED2 &ctx->completion_lock
HALF_LOCKED2 &ctx->ring_lock
HALF_LOCKED2 flags

mm/memcontrol.c mem_cgroup_replace_folio() -> obj_cgroup_is_root()

Type Parameter Key Value
PARAM_VALUE 0 objcg 4096-ptr_max
DATA_SOURCE 0 objcg r get_migration_objcg
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 irq

mm/memcontrol.c obj_cgroup_charge_zswap() -> obj_cgroup_is_root()

Type Parameter Key Value
PARAM_VALUE 0 objcg 4096-ptr_max
CAPPED_DATA 0 objcg 1
DATA_SOURCE 0 objcg $0

mm/memcontrol.c obj_cgroup_get_many() -> obj_cgroup_is_root()

Type Parameter Key Value
BUF_SIZE 0 objcg (-1),56
BUF_SIZE 0 objcg (-1),56
CAPPED_DATA 0 objcg 1
DATA_SOURCE 0 objcg $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 irq

mm/memcontrol.c obj_cgroup_put() -> obj_cgroup_is_root()

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

mm/memcontrol.c obj_cgroup_tryget() -> obj_cgroup_is_root()

Type Parameter Key Value
PARAM_VALUE 0 objcg 1-u64max
DATA_SOURCE 0 objcg $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read

mm/memcontrol.c obj_cgroup_uncharge_zswap() -> obj_cgroup_is_root()

Type Parameter Key Value
PARAM_VALUE 0 objcg 4096-ptr_max
DATA_SOURCE 0 objcg $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

mm/memcontrol.c uncharge_folio() -> obj_cgroup_is_root()

Type Parameter Key Value
PARAM_VALUE 0 objcg 8-u64max
CAPPED_DATA 0 objcg 1
DATA_SOURCE 0 objcg r folio_objcg
RX_PATH
TASK_NOT_RUNNING

mm/page_io.c obj_cgroup_put() -> obj_cgroup_is_root()

Type Parameter Key Value
PARAM_VALUE 0 objcg 4096-ptr_max
DATA_SOURCE 0 objcg $0
RX_PATH
TASK_NOT_RUNNING

mm/percpu.c obj_cgroup_get_many() -> obj_cgroup_is_root()

Type Parameter Key Value
PARAM_VALUE 0 objcg 4096-ptr_max
PARAM_VALUE 0 objcg->is_root 0
DATA_SOURCE 0 objcg $0

mm/percpu.c obj_cgroup_put() -> obj_cgroup_is_root()

Type Parameter Key Value
PARAM_VALUE 0 objcg 4096-ptr_max
CAPPED_DATA 0 objcg 1
DATA_SOURCE 0 objcg $0
PREEMPT_ADD
LOCK2 flags
LOCK2 global &pcpu_lock

mm/percpu.c pcpu_memcg_pre_alloc_hook() -> obj_cgroup_is_root()

Type Parameter Key Value
PARAM_VALUE 0 objcg 1-u64max
DATA_SOURCE 0 objcg r current_obj_cgroup

kernel/bpf/syscall.c obj_cgroup_get_many() -> obj_cgroup_is_root()

Type Parameter Key Value
PARAM_VALUE 0 objcg 1-u64max
DATA_SOURCE 0 objcg $0

kernel/bpf/syscall.c obj_cgroup_put() -> obj_cgroup_is_root()

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

mm/zswap.c obj_cgroup_get_many() -> obj_cgroup_is_root()

Type Parameter Key Value
PARAM_VALUE 0 objcg 4096-ptr_max
DATA_SOURCE 0 objcg $0

mm/zswap.c obj_cgroup_put() -> obj_cgroup_is_root()

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

kernel/bpf/memalloc.c obj_cgroup_get_many() -> obj_cgroup_is_root()

Type Parameter Key Value
PARAM_VALUE 0 objcg 1-u64max
DATA_SOURCE 0 objcg $0

kernel/bpf/memalloc.c obj_cgroup_put() -> obj_cgroup_is_root()

Type Parameter Key Value
PARAM_VALUE 0 objcg 1-u64max
DATA_SOURCE 0 objcg $0

mm/memcontrol-v1.c __memcg1_swapout() -> obj_cgroup_is_root()

Type Parameter Key Value
PARAM_VALUE 0 objcg 4096-ptr_max
DATA_SOURCE 0 objcg r folio_objcg
RX_PATH
TASK_NOT_RUNNING
LOCK2 irq
LOCK2 rcu_read
HALF_LOCKED2 &(&mapping->i_pages)->xa_lock
HALF_LOCKED2 &mapping->host->i_lock

mm/memcontrol-v1.c obj_cgroup_put() -> obj_cgroup_is_root()

Type Parameter Key Value
PARAM_VALUE 0 objcg 4096-ptr_max
DATA_SOURCE 0 objcg $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 irq
HALF_LOCKED2 &(&mapping->i_pages)->xa_lock
HALF_LOCKED2 &mapping->host->i_lock