Defined in 6 files as a prototype:

Defined in 5 files as a macro:

Defined in 19 files as a function:

Referenced in 18 files:

Smatch caller information:

mm/memory.c do_swap_page() -> update_mmu_cache_range()

Type Parameter Key Value
PARAM_VALUE 0 vmf 2508977417524461568,2900308121553498112
PARAM_VALUE 0 vmf->address 0,4096-u64max
PARAM_VALUE 1 vma 4096-ptr_max
PARAM_VALUE 3 ptep 4096-ptr_max
CAPPED_DATA 4 nr 1
DATA_SOURCE 0 vmf $0
NOSPEC 0 vmf->address
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 vmf->address 0,4096-u64max[c]
USER_DATA 0 vmf->pgoff 0-9007199254740990[c]
USER_DATA 0 vmf->real_address 0-u64max
USER_DATA 1 vma->vm_policy->flags 0,24,8192-57368[c]
USER_DATA 1 vma->vm_policy->home_node 0-1023
USER_DATA 1 vma->vm_policy->mode 2-3,5-u16max
USER_DATA 2 addr 0,4096-u64max[c]
UNITS 2 addr unit_byte
LOCK2 0 vmf->ptl
HALF_LOCKED2 &mm->mmap_lock

mm/memory.c handle_pte_fault() -> update_mmu_cache_range()

Type Parameter Key Value
PARAM_VALUE 0 vmf 2900308121553498112
PARAM_VALUE 0 vmf->address 0,4096-u64max
PARAM_VALUE 1 vma 4096-ptr_max
PARAM_VALUE 2 addr 0,4096-u64max
PARAM_VALUE 3 ptep 4096-ptr_max
PARAM_VALUE 4 nr 1
DATA_SOURCE 0 vmf $0
DATA_SOURCE 3 ptep r pte_offset_map_rw_nolock
BIT_INFO 0 vmf->flags 0x800,0x1fff
NOSPEC 0 vmf->real_address
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 vmf->address 0,4096-u64max[c]
USER_DATA 0 vmf->pgoff 0-13510801029595132[c]
USER_DATA 0 vmf->real_address 0-u64max[c]
USER_DATA 2 addr 0,4096-u64max[c]
UNITS 2 addr unit_byte
LOCK2 rcu_read
LOCK2 0 vmf->ptl
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &pool->lock

mm/memory.c map_anon_folio_pte_nopf() -> update_mmu_cache_range()

Type Parameter Key Value
PARAM_VALUE 0 vmf 0
PARAM_VALUE 1 vma 4096-ptr_max
PARAM_VALUE 3 ptep 4096-ptr_max
BUF_SIZE 1 vma (-1),4,24,64,168-s32max
BUF_SIZE 1 vma (-1),4,24,64,168-s32max
CAPPED_DATA 2 addr 1
CAPPED_DATA 2 addr 1
CAPPED_DATA 3 ptep 1
DATA_SOURCE 1 vma $2
DATA_SOURCE 2 addr $3
DATA_SOURCE 3 ptep $1
DATA_SOURCE 4 nr r folio_nr_pages
NOSPEC 2 addr
NOSPEC 2 addr
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 2 addr 0-u64max[c]
NO_OVERFLOW_SIMPLE 1 vma->vm_pgoff
UNITS 2 addr unit_byte
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 pmd_ptl
HALF_LOCKED2 vmf->ptl
HALF_LOCKED2 1 &vma->anon_vma->root->rwsem

mm/memory.c numa_rebuild_single_mapping() -> update_mmu_cache_range()

Type Parameter Key Value
PARAM_VALUE 0 vmf 2900308121553498112
PARAM_VALUE 0 vmf->address 0,4096-u64max
PARAM_VALUE 1 vma 4096-ptr_max
PARAM_VALUE 3 ptep 4096-ptr_max
PARAM_VALUE 4 nr 1
BUF_SIZE 0 vmf->vma (-1),1-s32max
BUF_SIZE 1 vma (-1),1-s32max
BUF_SIZE 1 vma (-1),1-s32max
CAPPED_DATA 0 vmf->vma 1
DATA_SOURCE 0 vmf $0
DATA_SOURCE 1 vma $1
DATA_SOURCE 2 addr $2
DATA_SOURCE 3 ptep $3
BIT_INFO 0 vmf->address 0x0,0xfffffffffffff000
BIT_INFO 0 vmf->flags 0x800,0xffffffffffffffff
BIT_INFO 0 vmf->gfp_mask 0xc0,0xffffffffffffffff
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 vmf->address 0,4096-u64max[c]
USER_DATA 0 vmf->pgoff 0-13510801029595132[c]
USER_DATA 0 vmf->real_address 0-u64max[c]
USER_DATA 0 vmf->vma->vm_policy->flags 0,24,8192-57368[c]
USER_DATA 0 vmf->vma->vm_policy->home_node 0-1023
USER_DATA 0 vmf->vma->vm_policy->mode 2-3,5-u16max
USER_DATA 2 addr 0,4096-u64max
NO_OVERFLOW_SIMPLE 0 vmf->vma->vm_pgoff
NO_OVERFLOW_SIMPLE 1 vma->vm_pgoff
UNITS 2 addr unit_byte
UNITS 3 ptep unit_page
LOCK2 0 vmf->ptl
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 rcu_read

mm/memory.c set_pte_range() -> update_mmu_cache_range()

Type Parameter Key Value
PARAM_VALUE 0 vmf 4096-ptr_max
PARAM_VALUE 1 vma 4096-ptr_max
PARAM_VALUE 3 ptep 4096-ptr_max
BUF_SIZE 0 vmf->cow_page (-1),64
BUF_SIZE 0 vmf->vma (-1),4,24,64,168-s32max
BUF_SIZE 1 vma (-1),4,24,64,168-s32max
BUF_SIZE 1 vma (-1),4,24,64,168-s32max
CAPPED_DATA 0 vmf->vma 1
CAPPED_DATA 4 nr 1
DATA_SOURCE 0 vmf $0
DATA_SOURCE 2 addr $4
DATA_SOURCE 4 nr $3
NOSPEC 0 vmf->address
NOSPEC 2 addr
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 vmf->address 0-u64max[c]
USER_DATA 0 vmf->pgoff 0-4503599627370495
USER_DATA 0 vmf->pte 4096-ptr_max[u]
USER_DATA 0 vmf->real_address 0-u64max[c]
USER_DATA 2 addr 0-u64max[c]
USER_DATA 3 ptep 4096-ptr_max[u]
NO_OVERFLOW_SIMPLE 0 vmf->vma->vm_end
NO_OVERFLOW_SIMPLE 0 vmf->vma->vm_pgoff
NO_OVERFLOW_SIMPLE 0 vmf->vma->vm_start
NO_OVERFLOW_SIMPLE 1 vma->vm_end
NO_OVERFLOW_SIMPLE 1 vma->vm_pgoff
NO_OVERFLOW_SIMPLE 1 vma->vm_start
UNITS 2 addr unit_byte
UNITS 4 nr unit_page
LOCK2 0 vmf->ptl
HALF_LOCKED2 rcu_read

mm/memory.c wp_page_copy() -> update_mmu_cache_range()

Type Parameter Key Value
PARAM_VALUE 0 vmf 2508977417524461568,2900308121553498112
PARAM_VALUE 0 vmf->address 0,4096-u64max
PARAM_VALUE 1 vma 4096-ptr_max
PARAM_VALUE 2 addr 0,4096-u64max
PARAM_VALUE 3 ptep 4096-ptr_max
PARAM_VALUE 4 nr 1
BUF_SIZE 0 vmf->vma (-1),1-s32max
BUF_SIZE 1 vma (-1),1-s32max
BUF_SIZE 1 vma (-1),1-s32max
CAPPED_DATA 0 vmf->address 1
CAPPED_DATA 0 vmf->vma 1
CAPPED_DATA 2 addr 1
CAPPED_DATA 2 addr 1
DATA_SOURCE 0 vmf $0
DATA_SOURCE 3 ptep r pte_offset_map_lock
NOSPEC 0 vmf->address
NOSPEC 2 addr
NOSPEC 2 addr
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 vmf->address 0,4096-u64max[c]
USER_DATA 0 vmf->pgoff 0-13510801029595132[c]
USER_DATA 0 vmf->real_address 0-u64max[c]
USER_DATA 0 vmf->vma->swap_readahead_info.counter 0-s64max[c]
USER_DATA 1 vma->swap_readahead_info.counter 0-s64max[c]
USER_DATA 2 addr 0,4096-u64max[c]
NO_OVERFLOW_SIMPLE 0 vmf->vma->vm_pgoff
NO_OVERFLOW_SIMPLE 1 vma->vm_pgoff
UNITS 2 addr unit_byte
LOCK2 0 vmf->ptl
HALF_LOCKED2 &mm->mmap_lock

mm/memory.c wp_page_reuse() -> update_mmu_cache_range()

Type Parameter Key Value
PARAM_VALUE 0 vmf 2508977417524461568,2900308121553498112
PARAM_VALUE 0 vmf->address 0,4096-u64max
PARAM_VALUE 1 vma 4096-ptr_max
PARAM_VALUE 2 addr 0,4096-u64max
PARAM_VALUE 3 ptep 4096-ptr_max
PARAM_VALUE 4 nr 1
BUF_SIZE 0 vmf->vma (-1),1-s32max
BUF_SIZE 1 vma (-1),1-s32max
BUF_SIZE 1 vma (-1),1-s32max
CAPPED_DATA 0 vmf->address 1
CAPPED_DATA 0 vmf->vma 1
CAPPED_DATA 2 addr 1
CAPPED_DATA 2 addr 1
DATA_SOURCE 0 vmf $0
BIT_INFO 0 vmf->flags 0x1,0x1fff
NOSPEC 0 vmf->address
NOSPEC 2 addr
NOSPEC 2 addr
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 vmf->address 0,4096-u64max[c]
USER_DATA 0 vmf->pgoff 0-13510801029595132[c]
USER_DATA 0 vmf->real_address 0-u64max[c]
USER_DATA 0 vmf->vma->swap_readahead_info.counter 0-s64max[c]
USER_DATA 1 vma->swap_readahead_info.counter 0-s64max[c]
USER_DATA 2 addr 0,4096-u64max[c]
NO_OVERFLOW_SIMPLE 0 vmf->vma->vm_pgoff
NO_OVERFLOW_SIMPLE 1 vma->vm_pgoff
UNITS 2 addr unit_byte
LOCK2 0 vmf->ptl
HALF_LOCKED2 &mm->mmap_lock