Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

mm/madvise.c madvise_cold_or_pageout_pte_range() -> tlb_flush_pmd_range()

Type Parameter Key Value
PARAM_VALUE 0 tlb 4096-ptr_max
PARAM_VALUE 2 size 2097152
DATA_SOURCE 1 address $1
NOSPEC 1 address
NOSPEC 1 address
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 1 address 0-u64max[c]
HALF_LOCKED2 &mm->mmap_lock

mm/huge_memory.c change_huge_pmd() -> tlb_flush_pmd_range()

Type Parameter Key Value
PARAM_VALUE 0 tlb 697157037476265984,1328374472486391808,3520855664362516480,5518561256286212096,6288812456027070464,8385517359223296000
PARAM_VALUE 2 size 2097152
CAPPED_DATA 1 address 1
CAPPED_DATA 1 address 1
DATA_SOURCE 0 tlb $0
DATA_SOURCE 1 address $3
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 tlb->end 1-u32max[c]
USER_DATA 0 tlb->start 0-u64max[c]
USER_DATA 1 address 0-u64max[c]
UNITS 1 address unit_byte
HALF_LOCKED2 &dst_mm->mmap_lock
HALF_LOCKED2 &mm->mmap_lock

mm/huge_memory.c madvise_free_huge_pmd() -> tlb_flush_pmd_range()

Type Parameter Key Value
PARAM_VALUE 0 tlb 4096-ptr_max
PARAM_VALUE 2 size 2097152
BUF_SIZE 0 tlb (-1),4,8,16,24,56,64,128,152,216,8248
BUF_SIZE 0 tlb (-1),4,8,16,24,56,64,128,152,216,8248
DATA_SOURCE 0 tlb $0
DATA_SOURCE 1 address $3
NOSPEC 1 address
NOSPEC 1 address
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 1 address 0-u64max[c]
HALF_LOCKED2 &mm->mmap_lock

mm/huge_memory.c zap_huge_pmd() -> tlb_flush_pmd_range()

Type Parameter Key Value
PARAM_VALUE 0 tlb 4096-ptr_max
PARAM_VALUE 2 size 2097152
BUF_SIZE 0 tlb (-1),128
BUF_SIZE 0 tlb (-1),128
DATA_SOURCE 0 tlb $0
DATA_SOURCE 1 address $3
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 tlb->end 0-u32max[c]
USER_DATA 0 tlb->start 0-u64max[c]
USER_DATA 1 address 0-u64max
NO_OVERFLOW_SIMPLE 0 tlb->mm->arg_start
UNITS 1 address unit_byte
HALF_LOCKED2 &mm->mmap_lock

mm/hugetlb.c __unmap_hugepage_range() -> tlb_flush_pmd_range()

Type Parameter Key Value
PARAM_VALUE 0 tlb 4096-ptr_max
PARAM_VALUE 1 address 0-18446744073709551614
PARAM_VALUE 2 size 2097152-1073741823
BUF_SIZE 0 tlb (-1),128
BUF_SIZE 0 tlb (-1),128
CAPPED_DATA 1 address 1
CAPPED_DATA 1 address 1
DATA_SOURCE 0 tlb $0
DATA_SOURCE 2 size r huge_page_size
FUZZY_MAX 2 size 2097152
NOSPEC 0 tlb->start
NOSPEC 1 address
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 tlb->end 0-u32max[c]
USER_DATA 0 tlb->start 0-u64max[c]
USER_DATA 1 address 0-18446744073709551614
UNITS 1 address unit_byte
HALF_LOCKED2 &mapping->i_mmap_rwsem

mm/hugetlb.c hugetlb_change_protection() -> tlb_flush_pmd_range()

Type Parameter Key Value
PARAM_VALUE 0 tlb 3890555459152166912
PARAM_VALUE 1 address 0-18446744073709551614
PARAM_VALUE 2 size 2097152-1073741823
CAPPED_DATA 1 address 1
CAPPED_DATA 1 address 1
DATA_SOURCE 1 address $1 [m]
DATA_SOURCE 2 size r huge_page_size
FUZZY_MAX 2 size 2097152
NOSPEC 0 tlb->start
NOSPEC 1 address
NOSPEC 1 address
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 tlb->end 1-u32max[c]
USER_DATA 0 tlb->start 0-18446744073709551614[c]
USER_DATA 1 address 0-18446744073709551614
UNITS 1 address unit_byte
LOCK2 &vma->vm_file->f_mapping->i_mmap_rwsem
HALF_LOCKED2 &dst_mm->mmap_lock
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct address_space)->i_mmap_rwsem

mm/hugetlb.c move_hugetlb_page_tables() -> tlb_flush_pmd_range()

Type Parameter Key Value
PARAM_VALUE 0 tlb 2630932897084018688
PARAM_VALUE 1 address 0-18446744073709551614
PARAM_VALUE 2 size 2097152-1073741823
CAPPED_DATA 1 address 1
CAPPED_DATA 1 address 1
DATA_SOURCE 1 address $2 [m]
DATA_SOURCE 2 size r huge_page_size
FUZZY_MAX 2 size 2097152
NOSPEC 0 tlb->start
NOSPEC 1 address
NOSPEC 1 address
NOCHECK_CALL
USER_DATA 0 tlb->end 1-u32max[c]
USER_DATA 0 tlb->start 0-18446744073709551614[c]
USER_DATA 1 address 0-s32max[c]
UNITS 1 address unit_byte
LOCK2 &mapping->i_mmap_rwsem
LOCK2 &mm->mmap_lock
HALF_LOCKED2 &tsk->signal->exec_update_lock
TYPE_LOCK (struct address_space)->i_mmap_rwsem
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/hugetlb.c tlb_unshare_pmd_ptdesc() -> tlb_flush_pmd_range()

Type Parameter Key Value
PARAM_VALUE 0 tlb 4096-ptr_max
PARAM_VALUE 1 address 0,1073741824-u64max
PARAM_VALUE 2 size 1073741824
BUF_SIZE 0 tlb (-1),128
BUF_SIZE 0 tlb (-1),128
DATA_SOURCE 0 tlb $0
BIT_INFO 1 address 0x0,0xffffffffc0000000
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 tlb->end 0-u32max[c]
USER_DATA 0 tlb->start 0-18446744073709551614[c]
USER_DATA 1 address 0,1073741824-18446744072635809792[c]
NO_OVERFLOW_SIMPLE 0 tlb->mm->arg_start
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &vma->vm_file->f_mapping->i_mmap_rwsem

mm/memory.c free_pte_range() -> tlb_flush_pmd_range()

Type Parameter Key Value
PARAM_VALUE 0 tlb 5936228607209656320,6993215424518877184,7445084580125044736,7920328892798767104
PARAM_VALUE 2 size 4096
DATA_SOURCE 0 tlb $0
DATA_SOURCE 1 address $2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 tlb->end 0[c]
NO_OVERFLOW_SIMPLE 0 tlb->mm->arg_start
NO_OVERFLOW_SIMPLE 0 tlb->start
NO_OVERFLOW_SIMPLE 1 address
UNITS 1 address unit_byte
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &tsk->signal->exec_update_lock

mm/memory.c zap_pte_range() -> tlb_flush_pmd_range()

Type Parameter Key Value
PARAM_VALUE 0 tlb 4096-ptr_max
PARAM_VALUE 2 size 4096
BUF_SIZE 0 tlb (-1),128
BUF_SIZE 0 tlb (-1),128
DATA_SOURCE 0 tlb $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 tlb->end 0-u32max[c]
USER_DATA 0 tlb->start 0-u64max[c]
USER_DATA 1 address 0-u64max
NO_OVERFLOW_SIMPLE 0 tlb->mm->arg_start
UNITS 1 address unit_byte
HALF_LOCKED2 &mm->mmap_lock