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 |