Documented in 1 files:

Defined in 1 files as a function:

Referenced in 5 files:

Smatch caller information:

mm/memcontrol.c memcg_is_dying() -> css_is_dying()

Type Parameter Key Value
PARAM_VALUE 0 css 1-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 rcu_read

fs/fs-writeback.c wbc_attach_and_unlock_inode() -> css_is_dying()

Type Parameter Key Value
PARAM_VALUE 0 css 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &pool->lock

mm/list_lru.c __memcg_list_lru_alloc() -> css_is_dying()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &((&xas)->xa)->xa_lock
LOCK2 flags

mm/list_lru.c __memcg_list_lru_alloc() -> css_is_dying()

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

mm/list_lru.c lock_list_lru_of_memcg() -> css_is_dying()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read

mm/vmscan.c lruvec_live_lock_irq() -> css_is_dying()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read

mm/vmscan.c lruvec_live_lock_irq() -> css_is_dying()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read

mm/vmscan.c memcg_is_dying() -> css_is_dying()

Type Parameter Key Value
PARAM_VALUE 0 css 1-u64max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

kernel/cgroup/cpuset.c is_cpuset_online() -> css_is_dying()

Type Parameter Key Value
PARAM_VALUE 0 css->flags 2-u32max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex
HALF_LOCKED2 global &sched_domains_mutex
HALF_LOCKED2 rcu_read

kernel/cgroup/cgroup.c cgroup_lock_and_drain_offline() -> css_is_dying()

Type Parameter Key Value
PARAM_VALUE 0 css 1-u64max
BUF_SIZE 0 css (-1),392
BUF_SIZE 0 css (-1),392
DATA_SOURCE 0 css r cgroup_css
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &cgroup_mutex
HALF_LOCKED2 &of->mutex

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

Type Parameter Key Value
PARAM_VALUE 0 css 4096-ptr_max
DATA_SOURCE 0 css $0 [m]
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 global &css_set_lock
HALF_LOCKED2 irq

mm/memcontrol-v1.c memcg_is_dying() -> css_is_dying()

Type Parameter Key Value
PARAM_VALUE 0 css 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

kernel/cgroup/cpuset-v1.c is_cpuset_online() -> css_is_dying()

Type Parameter Key Value
PARAM_VALUE 0 css->flags 2-u32max
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &cpuset_mutex
HALF_LOCKED2 global &cpuset_top_mutex
HALF_LOCKED2 rcu_read