Defined in 2 files as a function:

Referenced in 1 files:

Smatch caller information:

mm/vmscan.c get_next_mm() -> get_mm_state()

Type Parameter Key Value
PARAM_VALUE 0 lruvec 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mm_list->lock
TYPE_LOCK (struct lru_gen_mm_list)->lock

mm/vmscan.c iterate_mm_list() -> get_mm_state()

Type Parameter Key Value
PARAM_VALUE 0 lruvec 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

mm/vmscan.c iterate_mm_list_nowalk() -> get_mm_state()

Type Parameter Key Value
PARAM_VALUE 0 lruvec 4096-ptr_max
BUF_SIZE 0 lruvec->pgdat (-1),128
DATA_SOURCE 0 lruvec $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

mm/vmscan.c lru_gen_add_mm() -> get_mm_state()

Type Parameter Key Value
PARAM_VALUE 0 lruvec 4096-ptr_max
BUF_SIZE 0 lruvec 2424
DATA_SOURCE 0 lruvec r get_lruvec
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mm_list->lock
HALF_LOCKED2 &p->alloc_lock
HALF_LOCKED2 &tsk->alloc_lock
HALF_LOCKED2 &tsk->signal->exec_update_lock
TYPE_LOCK (struct lru_gen_mm_list)->lock
TYPE_LOCK (struct task_struct)->alloc_lock

mm/vmscan.c lru_gen_del_mm() -> get_mm_state()

Type Parameter Key Value
PARAM_VALUE 0 lruvec 4096-ptr_max
BUF_SIZE 0 lruvec 2424
DATA_SOURCE 0 lruvec r get_lruvec
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mm_list->lock
TYPE_LOCK (struct lru_gen_mm_list)->lock

mm/vmscan.c lru_gen_exit_memcg() -> get_mm_state()

Type Parameter Key Value
PARAM_VALUE 0 lruvec 4096-ptr_max
BUF_SIZE 0 lruvec 2424
DATA_SOURCE 0 lruvec r get_lruvec
HALF_LOCKED2 &pool->lock

mm/vmscan.c lru_gen_init_lruvec() -> get_mm_state()

Type Parameter Key Value
PARAM_VALUE 0 lruvec 4096-ptr_max
DATA_SOURCE 0 lruvec $0
MEM_ZERO 0 lruvec
MEM_ZERO 0 &lruvec->zswap_lruvec_state.nr_disk_swapins
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING

mm/vmscan.c lru_gen_look_around() -> get_mm_state()

Type Parameter Key Value
PARAM_VALUE 0 lruvec 4096-ptr_max
BUF_SIZE 0 lruvec 2424
DATA_SOURCE 0 lruvec r mem_cgroup_lruvec
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &anon_vma->root->rwsem
HALF_LOCKED2 &folio->private->lock

mm/vmscan.c lru_gen_seq_show_full() -> get_mm_state()

Type Parameter Key Value
PARAM_VALUE 0 lruvec 4096-ptr_max
DATA_SOURCE 0 lruvec $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &m->lock
TYPE_LOCK (struct seq_file)->lock

mm/vmscan.c reset_mm_stats() -> get_mm_state()

Type Parameter Key Value
PARAM_VALUE 0 lruvec 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mm_list->lock
TYPE_LOCK (struct lru_gen_mm_list)->lock

mm/vmscan.c try_to_inc_max_seq() -> get_mm_state()

Type Parameter Key Value
PARAM_VALUE 0 lruvec 4096-ptr_max
BUF_SIZE 0 lruvec (-1),2424
BUF_SIZE 0 lruvec (-1),2424
BUF_SIZE 0 lruvec->pgdat (-1),128
DATA_SOURCE 0 lruvec $0
RX_PATH
TASK_NOT_RUNNING

mm/vmscan.c try_to_inc_max_seq_nowalk() -> get_mm_state()

Type Parameter Key Value
PARAM_VALUE 0 lruvec 4096-ptr_max
BUF_SIZE 0 lruvec 2424
DATA_SOURCE 0 lruvec $1
LOCK2 &pool->lock
LOCK2 global &cgroup_mutex

mm/vmscan.c walk_pmd_range() -> get_mm_state()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mm->mmap_lock