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 |