Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

mm/huge_memory.c __folio_split() -> put_anon_vma()

Type Parameter Key Value
PARAM_VALUE 0 anon_vma 4096-ptr_max
PARAM_VALUE 0 anon_vma->refcount.counter 0-s32max
PARAM_VALUE 0 anon_vma->root 4096-ptr_max
DATA_SOURCE 0 anon_vma r folio_get_anon_vma
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

mm/rmap.c __anon_vma_prepare() -> put_anon_vma()

Type Parameter Key Value
PARAM_VALUE 0 anon_vma 4096-ptr_max
PARAM_VALUE 0 anon_vma->num_active_vmas 0
PARAM_VALUE 0 anon_vma->num_children 1
PARAM_VALUE 0 anon_vma->parent 4096-ptr_max
PARAM_VALUE 0 anon_vma->refcount.counter 1
PARAM_VALUE 0 anon_vma->root 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock

mm/rmap.c anon_vma_fork() -> put_anon_vma()

Type Parameter Key Value
PARAM_VALUE 0 anon_vma 4096-ptr_max
PARAM_VALUE 0 anon_vma->num_active_vmas 0
PARAM_VALUE 0 anon_vma->num_children 0
PARAM_VALUE 0 anon_vma->parent 4096-ptr_max
PARAM_VALUE 0 anon_vma->parent->num_active_vmas 0
PARAM_VALUE 0 anon_vma->parent->num_children 0
PARAM_VALUE 0 anon_vma->parent->parent 4096-ptr_max
PARAM_VALUE 0 anon_vma->parent->refcount.counter 1
PARAM_VALUE 0 anon_vma->refcount.counter 1
PARAM_VALUE 0 anon_vma->root 4096-ptr_max
PARAM_VALUE 0 anon_vma->root->num_active_vmas 0
PARAM_VALUE 0 anon_vma->root->num_children 0
PARAM_VALUE 0 anon_vma->root->parent 4096-ptr_max
PARAM_VALUE 0 anon_vma->root->refcount.counter 1
PARAM_VALUE 0 anon_vma->root->root 4096-ptr_max
DATA_SOURCE 0 anon_vma r anon_vma_alloc
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &mm->mmap_lock
LOCK2 &oldmm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/rmap.c anon_vma_fork() -> put_anon_vma()

Type Parameter Key Value
PARAM_VALUE 0 anon_vma 4096-ptr_max
PARAM_VALUE 0 anon_vma->num_active_vmas 0
PARAM_VALUE 0 anon_vma->num_children 0
PARAM_VALUE 0 anon_vma->parent 4096-ptr_max
PARAM_VALUE 0 anon_vma->parent->num_active_vmas 0
PARAM_VALUE 0 anon_vma->parent->num_children 0
PARAM_VALUE 0 anon_vma->parent->parent 4096-ptr_max
PARAM_VALUE 0 anon_vma->parent->refcount.counter 1
PARAM_VALUE 0 anon_vma->refcount.counter 1
PARAM_VALUE 0 anon_vma->root 4096-ptr_max
PARAM_VALUE 0 anon_vma->root->num_active_vmas 0
PARAM_VALUE 0 anon_vma->root->num_children 0
PARAM_VALUE 0 anon_vma->root->parent 4096-ptr_max
PARAM_VALUE 0 anon_vma->root->refcount.counter 1
PARAM_VALUE 0 anon_vma->root->root 4096-ptr_max
DATA_SOURCE 0 anon_vma r anon_vma_alloc
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &mm->mmap_lock
LOCK2 &oldmm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/rmap.c folio_get_anon_vma() -> put_anon_vma()

Type Parameter Key Value
PARAM_VALUE 0 anon_vma 4096-ptr_max
PARAM_VALUE 0 anon_vma->refcount.counter 0-s32max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

mm/rmap.c folio_lock_anon_vma_read() -> put_anon_vma()

Type Parameter Key Value
PARAM_VALUE 0 anon_vma 4096-ptr_max
PARAM_VALUE 0 anon_vma->refcount.counter 0-s32max
PARAM_VALUE 0 anon_vma->root 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &mf_mutex

mm/rmap.c unlink_anon_vmas() -> put_anon_vma()

Type Parameter Key Value
PARAM_VALUE 0 anon_vma 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock

mm/ksm.c break_cow() -> put_anon_vma()

Type Parameter Key Value
PARAM_VALUE 0 anon_vma 0-s32max,18446744071562067968-u64max
NOCHECK_CALL
LOCK2 global &ksm_thread_mutex

mm/ksm.c remove_node_from_stable_tree() -> put_anon_vma()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &ksm_thread_mutex

mm/ksm.c remove_rmap_item_from_tree() -> put_anon_vma()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &ksm_thread_mutex
HALF_LOCKED2 &mm->mmap_lock

mm/migrate.c migrate_folio_move() -> put_anon_vma()

Type Parameter Key Value
PARAM_VALUE 0 anon_vma 4-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

mm/migrate.c migrate_folio_undo_src() -> put_anon_vma()

Type Parameter Key Value
PARAM_VALUE 0 anon_vma 4-u64max
DATA_SOURCE 0 anon_vma $2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

mm/migrate.c unmap_and_move_hugetlb_folio() -> put_anon_vma()

Type Parameter Key Value
PARAM_VALUE 0 anon_vma 4096-ptr_max
PARAM_VALUE 0 anon_vma->refcount.counter 0-s32max
DATA_SOURCE 0 anon_vma r folio_get_anon_vma
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ctx->walk_control_lock
HALF_LOCKED2 &dev->mutex
HALF_LOCKED2 global &mf_mutex
HALF_LOCKED2 global &pcp_batch_high_lock