Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

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

Type Parameter Key Value
PARAM_VALUE 0 tlb 4096-ptr_max
PARAM_VALUE 2 range_size 2097152
DATA_SOURCE 0 tlb $0
DATA_SOURCE 1 address $1
DATA_SOURCE 2 range_size $2
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/madvise.c tlb_flush_pte_range() -> __tlb_adjust_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 range_size 1
DATA_SOURCE 0 tlb $0
DATA_SOURCE 1 address $1
DATA_SOURCE 2 range_size $2
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 tlb->start 1-u64max[c]
USER_DATA 1 address 1-18446744073709551614[c]
UNITS 0 tlb unit_byte
LOCK2 ptl
HALF_LOCKED2 &mm->mmap_lock

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

Type Parameter Key Value
PARAM_VALUE 0 tlb 4096-ptr_max
PARAM_VALUE 2 range_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 $1
DATA_SOURCE 2 range_size $2
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 0 tlb unit_byte
UNITS 1 address unit_byte
HALF_LOCKED2 &mm->mmap_lock

mm/huge_memory.c tlb_flush_pud_range() -> __tlb_adjust_range()

Type Parameter Key Value
PARAM_VALUE 0 tlb 4096-ptr_max
PARAM_VALUE 2 range_size 1073741824
BUF_SIZE 0 tlb (-1),128
BUF_SIZE 0 tlb (-1),128
DATA_SOURCE 0 tlb $0
DATA_SOURCE 1 address $1
DATA_SOURCE 2 range_size $2
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/mprotect.c tlb_flush_pte_range() -> __tlb_adjust_range()

Type Parameter Key Value
PARAM_VALUE 0 tlb 1328374472486391808,3520855664362516480,5518561256286212096,8385517359223296000
CAPPED_DATA 2 range_size 1
DATA_SOURCE 0 tlb $0
DATA_SOURCE 1 address $1
DATA_SOURCE 2 range_size $2
NOSPEC 1 address
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 range_size 0-u32max[c]
UNITS 1 address unit_byte
UNITS 2 range_size unit_byte
LOCK2 ptl
HALF_LOCKED2 &mm->mmap_lock

mm/hugetlb.c tlb_flush_p4d_range() -> __tlb_adjust_range()

Type Parameter Key Value
PARAM_VALUE 0 tlb 4096-ptr_max
PARAM_VALUE 1 address 0-18446744073709551614
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 1 address $1
DATA_SOURCE 2 range_size $2
NOSPEC 0 tlb->start
NOSPEC 1 address
NOSPEC 1 address
PREEMPT_ADD
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[c]
NO_OVERFLOW_SIMPLE 0 tlb->mm->arg_start
NO_OVERFLOW_SIMPLE 1 address
UNITS 1 address unit_byte
HALF_LOCKED2 &mapping->i_mmap_rwsem
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &vma->vm_file->f_mapping->i_mmap_rwsem

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

Type Parameter Key Value
PARAM_VALUE 0 tlb 4096-ptr_max
PARAM_VALUE 2 range_size 2097152-1073741824
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 1 address $1
DATA_SOURCE 2 range_size $2
NOSPEC 0 tlb->start
NOSPEC 1 address
PREEMPT_ADD
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[c]
NO_OVERFLOW_SIMPLE 0 tlb->mm->arg_start
UNITS 1 address unit_byte
HALF_LOCKED2 &mapping->i_mmap_rwsem
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &vma->vm_file->f_mapping->i_mmap_rwsem

mm/hugetlb.c tlb_flush_pte_range() -> __tlb_adjust_range()

Type Parameter Key Value
PARAM_VALUE 0 tlb 4096-ptr_max
PARAM_VALUE 1 address 0-18446744073709551614
PARAM_VALUE 2 range_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 1 address $1
DATA_SOURCE 2 range_size $2
NOSPEC 0 tlb->start
NOSPEC 1 address
NOSPEC 1 address
PREEMPT_ADD
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[c]
NO_OVERFLOW_SIMPLE 0 tlb->mm->arg_start
NO_OVERFLOW_SIMPLE 1 address
UNITS 1 address unit_byte
HALF_LOCKED2 &mapping->i_mmap_rwsem
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &vma->vm_file->f_mapping->i_mmap_rwsem

mm/hugetlb.c tlb_flush_pud_range() -> __tlb_adjust_range()

Type Parameter Key Value
PARAM_VALUE 0 tlb 4096-ptr_max
PARAM_VALUE 1 address 0-18446744073709551614
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 1 address $1
DATA_SOURCE 2 range_size $2
NOSPEC 0 tlb->start
NOSPEC 1 address
NOSPEC 1 address
PREEMPT_ADD
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[c]
NO_OVERFLOW_SIMPLE 0 tlb->mm->arg_start
NO_OVERFLOW_SIMPLE 1 address
UNITS 1 address unit_byte
HALF_LOCKED2 &mapping->i_mmap_rwsem
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &vma->vm_file->f_mapping->i_mmap_rwsem

mm/memory.c free_p4d_range() -> __tlb_adjust_range()

Type Parameter Key Value
PARAM_VALUE 0 tlb 5936228607209656320,6993215424518877184,7445084580125044736,7920328892798767104
PARAM_VALUE 2 range_size 4096
DATA_SOURCE 0 tlb $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 tlb->end 0[c]
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 tlb_flush_p4d_range() -> __tlb_adjust_range()

Type Parameter Key Value
PARAM_VALUE 0 tlb 5936228607209656320,6993215424518877184,7445084580125044736,7920328892798767104
PARAM_VALUE 1 address 0,549755813888-u64max
PARAM_VALUE 2 range_size 4096
DATA_SOURCE 0 tlb $0
DATA_SOURCE 1 address $1
DATA_SOURCE 2 range_size $2
BIT_INFO 1 address 0x0,0xffffff8000000000
BIT_INFO 1 address 0x0,0xffffff8000000000
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 tlb_flush_pmd_range() -> __tlb_adjust_range()

Type Parameter Key Value
PARAM_VALUE 0 tlb 4096-ptr_max
PARAM_VALUE 2 range_size 4096
BUF_SIZE 0 tlb (-1),128
BUF_SIZE 0 tlb (-1),128
DATA_SOURCE 0 tlb $0
DATA_SOURCE 1 address $1
DATA_SOURCE 2 range_size $2
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
HALF_LOCKED2 &mm->mmap_lock

mm/memory.c tlb_flush_pte_range() -> __tlb_adjust_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 range_size 1
DATA_SOURCE 0 tlb $0
DATA_SOURCE 1 address $1
DATA_SOURCE 2 range_size $2
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 tlb_flush_pud_range() -> __tlb_adjust_range()

Type Parameter Key Value
PARAM_VALUE 0 tlb 5936228607209656320,6993215424518877184,7445084580125044736,7920328892798767104
PARAM_VALUE 1 address 0,1073741824-u64max
PARAM_VALUE 2 range_size 4096
DATA_SOURCE 0 tlb $0
DATA_SOURCE 1 address $1
DATA_SOURCE 2 range_size $2
BIT_INFO 1 address 0x0,0xffffffffc0000000
BIT_INFO 1 address 0x0,0xffffffffc0000000
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