Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

kernel/events/uprobes.c build_map_info() -> offset_to_vaddr()

Type Parameter Key Value
PARAM_VALUE 0 vma 4096-ptr_max
DATA_SOURCE 1 offset $1
RX_PATH
TASK_NOT_RUNNING
UNITS 1 offset unit_byte
LOCK2 &mapping->i_mmap_rwsem
LOCK2 &uprobe->register_rwsem
HALF_LOCKED2 global &event_mutex
TYPE_LOCK (struct address_space)->i_mmap_rwsem
TYPE_LOCK (struct uprobe)->register_rwsem

kernel/events/uprobes.c delayed_ref_ctr_inc() -> offset_to_vaddr()

Type Parameter Key Value
PARAM_VALUE 0 vma 4096-ptr_max
PARAM_VALUE 1 offset s64min-(-1),1-s64max
CAPPED_DATA 0 vma 1
CAPPED_DATA 0 vma->vm_mm 1
CAPPED_DATA 0 vma->vm_start 1
DATA_SOURCE 0 vma $0
PARAM_COMPARE 0 vma->vm_end > $0->vm_start
NOSPEC 0 vma->vm_pgoff
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 vma->vm_pgoff 0-4503599627370495[c]
NO_OVERFLOW_SIMPLE 0 vma->vm_pgoff
LOCK2 global &delayed_uprobe_lock
HALF_LOCKED2 &mm->mmap_lock

kernel/events/uprobes.c unapply_uprobe() -> offset_to_vaddr()

Type Parameter Key Value
PARAM_VALUE 0 vma 4096-ptr_max
PARAM_VALUE 1 offset s64min-(-2),0-s64max
CAPPED_DATA 1 offset 1
CAPPED_DATA 1 offset 1
DATA_SOURCE 0 vma r vma_next
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 vma->vm_file->f_mapping->host->i_bytes
UNITS 1 offset unit_byte
LOCK2 &mm->mmap_lock
LOCK2 &uprobe->register_rwsem
TYPE_LOCK (struct mm_struct)->mmap_lock
TYPE_LOCK (struct uprobe)->register_rwsem

kernel/events/uprobes.c update_ref_ctr() -> offset_to_vaddr()

Type Parameter Key Value
PARAM_VALUE 0 vma 4096-ptr_max
PARAM_VALUE 1 offset s64min-(-1),1-s64max
CAPPED_DATA 0 vma->vm_start 1
DATA_SOURCE 0 vma r find_ref_ctr_vma
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &uprobe->register_rwsem

kernel/events/uprobes.c uprobe_mmap() -> offset_to_vaddr()

Type Parameter Key Value
PARAM_VALUE 0 vma 4096-ptr_max
CAPPED_DATA 0 vma 1
DATA_SOURCE 0 vma $0
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 0 vma->vm_pgoff
UNITS 1 offset unit_byte

kernel/events/uprobes.c valid_ref_ctr_vma() -> offset_to_vaddr()

Type Parameter Key Value
PARAM_VALUE 0 vma 1-u64max
BUF_SIZE 0 vma (-1)-s32max
BUF_SIZE 0 vma (-1)-s32max
DATA_SOURCE 0 vma $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 vma->shared.rb_subtree_last 0-u64max[u]
USER_DATA 0 vma->vm_pgoff 0-4503599627370495[c]
NO_OVERFLOW_SIMPLE 0 vma->vm_end
NO_OVERFLOW_SIMPLE 0 vma->vm_start
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 global &delayed_uprobe_lock