Defined in 1 files as a function:
Referenced in 2 files:
Smatch caller information:
mm/madvise.c tlb_remove_tlb_entries() -> tlb_flush_pte_range()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | tlb | 4096-ptr_max |
| 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 |
| CAPPED_DATA | 2 | size | 1 |
| 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 | 0 | tlb->start | 1-u64max[c] |
| USER_DATA | 1 | address | 1-u64max[c] |
| LOCK2 | ptl | ||
| HALF_LOCKED2 | &mm->mmap_lock |
mm/mprotect.c prot_commit_flush_ptes() -> tlb_flush_pte_range()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | tlb | 1328374472486391808,3520855664362516480,5518561256286212096,8385517359223296000 |
| PARAM_VALUE | 2 | size | 0-8796093018112 |
| CAPPED_DATA | 2 | size | 1 |
| DATA_SOURCE | 0 | tlb | $8 |
| DATA_SOURCE | 1 | address | $1 |
| NOSPEC | 1 | address | |
| 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] |
| USER_DATA | 2 | size | 0,8192-8796093018112[c] |
| UNITS | 1 | address | unit_byte |
| UNITS | 2 | size | unit_byte |
| LOCK2 | ptl | ||
| HALF_LOCKED2 | &mm->mmap_lock |
mm/hugetlb.c __unmap_hugepage_range() -> tlb_flush_pte_range()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | tlb | 4096-ptr_max |
| PARAM_VALUE | 1 | address | 0-18446744073709551614 |
| PARAM_VALUE | 2 | size | 0-2097151 |
| 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 |
| 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_pte_range()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | tlb | 3890555459152166912 |
| PARAM_VALUE | 1 | address | 0-18446744073709551614 |
| PARAM_VALUE | 2 | size | 0-2097151 |
| CAPPED_DATA | 1 | address | 1 |
| CAPPED_DATA | 1 | address | 1 |
| DATA_SOURCE | 1 | address | $1 [m] |
| DATA_SOURCE | 2 | size | r huge_page_size |
| 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_pte_range()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | tlb | 2630932897084018688 |
| PARAM_VALUE | 1 | address | 0-18446744073709551614 |
| PARAM_VALUE | 2 | size | 0-2097151 |
| CAPPED_DATA | 1 | address | 1 |
| CAPPED_DATA | 1 | address | 1 |
| DATA_SOURCE | 1 | address | $2 [m] |
| DATA_SOURCE | 2 | size | r huge_page_size |
| 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/memory.c tlb_remove_tlb_entries() -> tlb_flush_pte_range()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | tlb | 4096-ptr_max |
| BUF_SIZE | 0 | tlb | (-1),128 |
| BUF_SIZE | 0 | tlb | (-1),128 |
| CAPPED_DATA | 2 | size | 1 |
| 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 |
| UNITS | 1 | address | unit_byte |
| LOCK2 | ptl | ||
| HALF_LOCKED2 | &mm->mmap_lock |
mm/memory.c zap_present_ptes() -> tlb_flush_pte_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 |
| DATA_SOURCE | 1 | address | $5 |
| 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 |
| UNITS | 1 | address | unit_byte |
| LOCK2 | ptl | ||
| HALF_LOCKED2 | &mm->mmap_lock |