Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

mm/swapfile.c __free_cluster() -> move_cluster()

Type Parameter Key Value
PARAM_VALUE 0 si 4096-ptr_max
PARAM_VALUE 0 *si->global_cluster->next 0-4294967295
PARAM_VALUE 1 ci 4096-ptr_max
PARAM_VALUE 1 ci->flags 0,2-255
PARAM_VALUE 1 ci->memcg_table 0
PARAM_VALUE 1 ci->table 0
PARAM_VALUE 2 list 4096-ptr_max
PARAM_VALUE 3 new_flags 1
DATA_SOURCE 0 si $0
DATA_SOURCE 1 ci $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 0 &si->global_cluster_lock
HALF_LOCKED2 1 &ci->lock

mm/swapfile.c partial_free_cluster() -> move_cluster()

Type Parameter Key Value
PARAM_VALUE 0 si 4096-ptr_max
PARAM_VALUE 0 si->nonfull_clusters 4096-ptr_max
PARAM_VALUE 1 ci 4096-ptr_max
PARAM_VALUE 1 ci->count 1-511,513-u16max
PARAM_VALUE 1 ci->flags 0-1,3-5
PARAM_VALUE 1 ci->memcg_table 0,4096-ptr_max
PARAM_VALUE 3 new_flags 2
CAPPED_DATA 1 ci->table 1
DATA_SOURCE 0 si $0
DATA_SOURCE 1 ci $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 1 &ci->lock

mm/swapfile.c relocate_cluster() -> move_cluster()

Type Parameter Key Value
PARAM_VALUE 0 si->frag_clusters 4096-ptr_max
PARAM_VALUE 0 *si->global_cluster->next 0-4294967295
PARAM_VALUE 1 ci 4096-ptr_max
PARAM_VALUE 1 ci->count 1-511,513-u16max
PARAM_VALUE 1 ci->flags 0-2,4,6-255
PARAM_VALUE 3 new_flags 3
DATA_SOURCE 0 si $0
DATA_SOURCE 1 ci $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 0 &si->global_cluster_lock
HALF_LOCKED2 1 &ci->lock

mm/swapfile.c relocate_cluster() -> move_cluster()

Type Parameter Key Value
PARAM_VALUE 0 *si->global_cluster->next 0-4294967295
PARAM_VALUE 1 ci 4096-ptr_max
PARAM_VALUE 1 ci->count 512
PARAM_VALUE 1 ci->flags 0-3,6-255
PARAM_VALUE 2 list 4096-ptr_max
PARAM_VALUE 3 new_flags 4
DATA_SOURCE 0 si $0
DATA_SOURCE 1 ci $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 0 &si->global_cluster_lock
HALF_LOCKED2 1 &ci->lock

mm/swapfile.c swap_cluster_populate() -> move_cluster()

Type Parameter Key Value
PARAM_VALUE 0 si 4096-ptr_max
PARAM_VALUE 0 si->flags 16-u64max
PARAM_VALUE 0 si->lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 *si->global_cluster->next 0-4294967295
PARAM_VALUE 1 ci 4096-ptr_max
PARAM_VALUE 1 ci->flags 0
PARAM_VALUE 1 ci->lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 ci->table 0
PARAM_VALUE 2 list 4096-ptr_max
PARAM_VALUE 3 new_flags 1
DATA_SOURCE 0 si $0
DATA_SOURCE 1 ci $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &ci->lock
LOCK2 1 &ci->lock
HALF_LOCKED2 0 &si->global_cluster_lock
TYPE_LOCK (struct swap_cluster_info)->lock

mm/swapfile.c swap_cluster_schedule_discard() -> move_cluster()

Type Parameter Key Value
PARAM_VALUE 0 si 4096-ptr_max
PARAM_VALUE 0 *si->global_cluster->next 0-4294967295
PARAM_VALUE 1 ci 4096-ptr_max
PARAM_VALUE 1 ci->count 0
PARAM_VALUE 1 ci->flags 0,2-255
PARAM_VALUE 2 list 4096-ptr_max
PARAM_VALUE 3 new_flags 5
DATA_SOURCE 0 si $0
DATA_SOURCE 1 ci $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 0 &si->global_cluster_lock
HALF_LOCKED2 1 &ci->lock