Defined in 14 files as a prototype:

Defined in 8 files as a macro:

Defined in 24 files as a function:

Referenced in 44 files:

Smatch caller information:

mm/percpu.c pcpu_post_unmap_tlb_flush() -> flush_tlb_kernel_range()

Type Parameter Key Value
NOCHECK_CALL
LOCK2 global &pcpu_alloc_mutex
HALF_LOCKED2 &pool->lock

arch/x86/events/intel/ds.c ds_clear_cea() -> flush_tlb_kernel_range()

Type Parameter Key Value
PARAM_VALUE 0 start 4096-18446744073709547520
PARAM_VALUE 1 end 4096-18446744073709547520
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 start unit_byte
UNITS 1 end unit_byte
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &pmc_reserve_mutex

arch/x86/events/intel/ds.c ds_update_cea() -> flush_tlb_kernel_range()

Type Parameter Key Value
PARAM_VALUE 0 start 4096-18446744073709547520
PARAM_VALUE 1 end 4096-18446744073709547520
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 start unit_byte
UNITS 1 end unit_byte
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &pmc_reserve_mutex

kernel/power/snapshot.c hibernate_unmap_page() -> flush_tlb_kernel_range()

Type Parameter Key Value
PARAM_VALUE 0 start 18379471554275704832,18446612682070032384
PARAM_VALUE 1 end 18379471554275708928,18446612682070036480
DATA_SOURCE 0 start r lowmem_page_address
NOCHECK_CALL
UNITS 0 start unit_byte
UNITS 1 end unit_byte

mm/secretmem.c secretmem_fault() -> flush_tlb_kernel_range()

Type Parameter Key Value
PARAM_VALUE 0 start 18379471554275704832,18446612682070032384
PARAM_VALUE 1 end 18379471554275708928,18446612682070036480
DATA_SOURCE 0 start r folio_address
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 start unit_byte
UNITS 1 end unit_byte
LOCK2 &mapping->invalidate_lock
TYPE_LOCK (struct address_space)->invalidate_lock

kernel/bpf/arena.c arena_free_pages() -> flush_tlb_kernel_range()

Type Parameter Key Value
NOCHECK_CALL
UNITS 0 start unit_byte
UNITS 1 end unit_byte

kernel/bpf/arena.c arena_free_worker() -> flush_tlb_kernel_range()

Type Parameter Key Value
NOCHECK_CALL
UNITS 0 start unit_byte
UNITS 1 end unit_byte
HALF_LOCKED2 &pool->lock

mm/vmalloc.c __purge_vmap_area_lazy() -> flush_tlb_kernel_range()

Type Parameter Key Value
CAPPED_DATA 0 start 1
CAPPED_DATA 0 start 1
DATA_SOURCE 0 start $0 [m]
DATA_SOURCE 1 end $1 [m]
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 start unit_byte
UNITS 1 end unit_byte
LOCK2 global &vmap_purge_lock

mm/vmalloc.c _vm_unmap_aliases() -> flush_tlb_kernel_range()

Type Parameter Key Value
CAPPED_DATA 0 start 1
CAPPED_DATA 0 start 1
DATA_SOURCE 0 start $0 [m]
DATA_SOURCE 1 end $1 [m]
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 start unit_byte
UNITS 1 end unit_byte
LOCK2 global &vmap_purge_lock
HALF_LOCKED2 &region->snapshot_lock

mm/vmalloc.c free_unmap_vmap_area() -> flush_tlb_kernel_range()

Type Parameter Key Value
PARAM_VALUE 0 start 0-18446744073709551614
PARAM_VALUE 1 end 1-u64max
CAPPED_DATA 0 start 1
CAPPED_DATA 0 start 1
CAPPED_DATA 1 end 1
CAPPED_DATA 1 end 1
PARAM_COMPARE 0 start < $1
PARAM_COMPARE 1 end > $0
PARAM_COMPARE 1 end > $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 start unit_byte
UNITS 1 end unit_byte

mm/vmalloc.c vunmap_range() -> flush_tlb_kernel_range()

Type Parameter Key Value
PARAM_VALUE 0 start 0-18446744073709551614
PARAM_VALUE 1 end 1-u64max
CAPPED_DATA 1 end 1
CAPPED_DATA 1 end 1
DATA_SOURCE 0 start $0
DATA_SOURCE 1 end $1
PARAM_COMPARE 0 start < $1
PARAM_COMPARE 0 start < $1
PARAM_COMPARE 1 end > $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 start unit_byte
UNITS 1 end unit_byte

mm/hugetlb_vmemmap.c vmemmap_remap_range() -> flush_tlb_kernel_range()

Type Parameter Key Value
PARAM_VALUE 0 start 4096-18446744073709547520
PARAM_VALUE 1 end 4097-u64max
CAPPED_DATA 1 end 1
CAPPED_DATA 1 end 1
DATA_SOURCE 0 start $0
DATA_SOURCE 1 end $1
PARAM_COMPARE 0 start < $1
PARAM_COMPARE 1 end > $0
PARAM_COMPARE 1 end > $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 start unit_byte
UNITS 1 end unit_byte

mm/hugetlb_vmemmap.c vmemmap_split_pmd() -> flush_tlb_kernel_range()

Type Parameter Key Value
PARAM_VALUE 0 start 0,2097152-u64max
PARAM_VALUE 1 end 2097152
DATA_SOURCE 0 start $2
BIT_INFO 0 start 0x0,0xffffffffffe00000
BIT_INFO 0 start 0x0,0xffffffffffe00000
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 start 0,2097152-u64max[c]
USER_DATA 1 end 2097152[c]
LOCK2 global &init_mm.page_table_lock
HALF_LOCKED2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->page_table_lock

arch/x86/mm/pgtable.c pmd_free_pte_page() -> flush_tlb_kernel_range()

Type Parameter Key Value
PARAM_VALUE 0 start 0-18446744073709551614
CAPPED_DATA 0 start 1
CAPPED_DATA 0 start 1
CAPPED_DATA 1 end 1
DATA_SOURCE 0 start $1
BIT_INFO 0 start 0x0,0xffffffffffe00000
BIT_INFO 0 start 0x0,0xffffffffffe00000
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 start unit_byte
UNITS 1 end unit_byte

arch/x86/mm/pgtable.c pud_free_pmd_page() -> flush_tlb_kernel_range()

Type Parameter Key Value
PARAM_VALUE 0 start 0-18446744073709551614
CAPPED_DATA 0 start 1
CAPPED_DATA 0 start 1
CAPPED_DATA 1 end 1
DATA_SOURCE 0 start $1
BIT_INFO 0 start 0x0,0xffffffffc0000000
BIT_INFO 0 start 0x0,0xffffffffc0000000
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 start unit_byte
UNITS 1 end unit_byte

mm/kasan/shadow.c __kasan_release_vmalloc() -> flush_tlb_kernel_range()

Type Parameter Key Value
PARAM_VALUE 0 start 4096-18446744073709547519
PARAM_VALUE 1 end 4097-18446744073709547520
CAPPED_DATA 0 start 1
DATA_SOURCE 0 start r kasan_mem_to_shadow
DATA_SOURCE 1 end r kasan_mem_to_shadow
PARAM_COMPARE 0 start < $1
PARAM_COMPARE 1 end > $0
PARAM_COMPARE 1 end > $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 global &free_vmap_area_lock
HALF_LOCKED2 global &pcpu_alloc_mutex