Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 2 files:

Smatch caller information:

kernel/exit.c __try_to_set_owner() -> lru_gen_migrate_mm()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 0 mm->mm_users.counter 2-s32max
PARAM_VALUE 0 mm->mmap_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 mm->mmap_lock.first_waiter->type 0-1
PARAM_VALUE 0 mm->owner 4096-ptr_max
PARAM_VALUE 0 mm->owner->mm 4096-ptr_max
CAPPED_DATA 0 mm 1
DATA_SOURCE 0 mm $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 mm unit_byte
LOCK2 &tsk->alloc_lock
TYPE_LOCK (struct task_struct)->alloc_lock

mm/memcontrol.c mem_cgroup_lru_gen_attach() -> lru_gen_migrate_mm()

Type Parameter Key Value
PARAM_VALUE 0 mm 1-u64max
PARAM_VALUE 0 mm->owner 4096-ptr_max
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 mm unit_byte
LOCK2 &task->alloc_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &cgroup_mutex
TYPE_LOCK (struct task_struct)->alloc_lock