Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 8 files:

Smatch caller information:

mm/madvise.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
NOSPEC 1 index
NOSPEC 1 index
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 index 0-u64max
UNITS 1 index unit_byte
LOCK2 &mm->mmap_lock
HALF_LOCKED2 &madv_behavior->mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/huge_memory.c vma_lookup() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 1 index 0-18446744073709551614
CAPPED_DATA 1 index 1
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
UNITS 1 index unit_byte
LOCK2 &mm->mmap_lock
LOCK2 &split_debug_mutex
TYPE_LOCK (struct mm_struct)->mmap_lock

drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
LOCK2 &mm->mmap_lock
HALF_LOCKED2 &p->mutex
HALF_LOCKED2 &process_info->lock
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/mmap.c vma_lookup() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 1 index 0,4096-18446744073709551614
CAPPED_DATA 1 index 1
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
BIT_INFO 1 index 0x0,0xfffffffffffff000
BIT_INFO 1 index 0x0,0xfffffffffffff000
NOSPEC 1 index
USER_DATA 1 index 0,4096-18446744073709551614[c]
NO_OVERFLOW_SIMPLE 1 index
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

kernel/futex/core.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 index 0-u64max
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 rcu_read

mm/userfaultfd.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
NOSPEC 1 index
NOSPEC 1 index
USER_DATA 1 index 0-18446744073709551614[c]
NO_OVERFLOW_SIMPLE 1 index
UNITS 1 index unit_byte
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

kernel/bpf/stackmap.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

fs/proc/base.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
RX_PATH
TASK_NOT_RUNNING
NO_OVERFLOW_SIMPLE 1 index
LOCK2 &mm->mmap_lock
HALF_LOCKED2 &task->signal->exec_update_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

lib/test_hmm.c vma_lookup() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 1 index 0-18446744073709551613
CAPPED_DATA 1 index 1
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
NOSPEC 1 index
NOSPEC 1 index
USER_DATA 1 index 0-18446744073709551613[c]
UNITS 1 index unit_byte
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

drivers/misc/fastrpc.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
RX_PATH
TASK_NOT_RUNNING
UNITS 1 index unit_byte

net/ipv4/tcp.c vma_lookup() -> mtree_load()

Type Parameter Key Value
CAPPED_DATA 1 index 1
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
BIT_INFO 1 index 0x0,0xfffffffffffff000
BIT_INFO 1 index 0x0,0xfffffffffffff000
RX_PATH
USER_DATA 1 index 0-u64max[c]
LOCK2 &mm->mmap_lock
HALF_LOCKED2 sk
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/rmap.c vma_lookup() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 1 index 0,4096-u64max
CAPPED_DATA 1 index 1
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
BIT_INFO 1 index 0x0,0xfffffffffffff000
BIT_INFO 1 index 0x0,0xfffffffffffff000
NOSPEC 1 index
NOSPEC 1 index
USER_DATA 1 index 0,4096-u64max[c]
UNITS 1 index unit_byte
LOCK2 &mm->mmap_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct mm_struct)->mmap_lock

drivers/gpu/drm/drm_gpusvm.c vma_lookup() -> mtree_load()

Type Parameter Key Value
CAPPED_DATA 1 index 1
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 1 index unit_byte
LOCK2 &mm->mmap_lock
LOCK2 &vm->lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct mm_struct)->mmap_lock
TYPE_LOCK (struct xe_vm)->lock

drivers/gpu/drm/drm_pagemap.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
LOCK2 &driver_migrate_lock
LOCK2 &mm->mmap_lock
LOCK2 &vm->lock
LOCK2 global &drm_unplug_srcu
TYPE_LOCK (struct mm_struct)->mmap_lock
TYPE_LOCK (struct xe_vm)->lock

mm/mremap.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
USER_DATA 1 index 0-u64max
UNITS 1 index unit_byte
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

drivers/iommu/iommufd/main.c iommufd_fops_mmap() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 0 mt 4096-ptr_max
PARAM_VALUE 1 index 0,4096-18446744073709547520
BIT_INFO 1 index 0x0,0xfffffffffffff000
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 index 0,4096-18446744073709547520[c]
UNITS 1 index unit_byte
LOCK2 &(&ictx->mt_mmap)->ma_lock
HALF_LOCKED2 &ipcp->lock

mm/ksm.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
NO_OVERFLOW_SIMPLE 1 index
UNITS 1 index unit_byte
LOCK2 &mm->mmap_lock
LOCK2 global &ksm_thread_mutex
TYPE_LOCK (struct mm_struct)->mmap_lock

fs/btrfs/lru_cache.c btrfs_lru_cache_lookup() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 0 mt 4096-ptr_max
DATA_SOURCE 1 index $1
PREEMPT_ADD
TASK_NOT_RUNNING
UNITS 1 index unit_byte

fs/btrfs/lru_cache.c btrfs_lru_cache_store() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 0 mt 4096-ptr_max
UNITS 1 index unit_byte

lib/test_maple_tree.c alloc_cyclic_testing() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 0 mt 4096-ptr_max
PARAM_VALUE 0 mt->ma_flags 1
PARAM_VALUE 0 mt->ma_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 mt->ma_root 0
CAPPED_DATA 0 mt 1
DATA_SOURCE 0 mt $0

lib/test_maple_tree.c alloc_cyclic_testing() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 0 mt 4096-ptr_max
PARAM_VALUE 0 mt->ma_flags 1
PARAM_VALUE 0 mt->ma_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 mt->ma_root 0
CAPPED_DATA 0 mt 1
DATA_SOURCE 0 mt $0

lib/test_maple_tree.c alloc_cyclic_testing() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 0 mt 4096-ptr_max
PARAM_VALUE 0 mt->ma_flags 1
PARAM_VALUE 0 mt->ma_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 mt->ma_root 0
CAPPED_DATA 0 mt 1
DATA_SOURCE 0 mt $0

lib/test_maple_tree.c alloc_cyclic_testing() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 0 mt 4096-ptr_max
PARAM_VALUE 0 mt->ma_flags 1
PARAM_VALUE 0 mt->ma_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 mt->ma_root 0
CAPPED_DATA 0 mt 1
DATA_SOURCE 0 mt $0

lib/test_maple_tree.c alloc_cyclic_testing() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 0 mt 4096-ptr_max
PARAM_VALUE 0 mt->ma_flags 1
PARAM_VALUE 0 mt->ma_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 mt->ma_root 0
PARAM_VALUE 1 index 123
CAPPED_DATA 0 mt 1
DATA_SOURCE 0 mt $0

lib/test_maple_tree.c alloc_cyclic_testing() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 0 mt 4096-ptr_max
PARAM_VALUE 0 mt->ma_flags 1
PARAM_VALUE 0 mt->ma_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 mt->ma_root 0
PARAM_VALUE 1 index 123
CAPPED_DATA 0 mt 1
DATA_SOURCE 0 mt $0

lib/test_maple_tree.c alloc_cyclic_testing() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 0 mt 4096-ptr_max
PARAM_VALUE 0 mt->ma_flags 1
PARAM_VALUE 0 mt->ma_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 mt->ma_root 0
CAPPED_DATA 0 mt 1
DATA_SOURCE 0 mt $0

lib/test_maple_tree.c alloc_cyclic_testing() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 0 mt 4096-ptr_max
PARAM_VALUE 0 mt->ma_flags 1
PARAM_VALUE 0 mt->ma_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 mt->ma_root 0
CAPPED_DATA 0 mt 1
DATA_SOURCE 0 mt $0

lib/test_maple_tree.c alloc_cyclic_testing() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 0 mt 4096-ptr_max
PARAM_VALUE 0 mt->ma_flags 1
PARAM_VALUE 0 mt->ma_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 mt->ma_root 0
CAPPED_DATA 0 mt 1
DATA_SOURCE 0 mt $0

lib/test_maple_tree.c alloc_cyclic_testing() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 0 mt 4096-ptr_max
PARAM_VALUE 0 mt->ma_flags 1
PARAM_VALUE 0 mt->ma_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 mt->ma_root 0
CAPPED_DATA 0 mt 1
DATA_SOURCE 0 mt $0

lib/test_maple_tree.c mtree_erase_index() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 0 mt 4096-ptr_max
PARAM_VALUE 0 mt->ma_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 index 0-255,u64max
DATA_SOURCE 0 mt $0
DATA_SOURCE 1 index $1
FUZZY_MAX 1 index 255
HARD_MAX 1 index u64max

lib/test_maple_tree.c mtree_erase_index() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 0 mt 4096-ptr_max
PARAM_VALUE 0 mt->ma_lock.rlock.dep_map->name 0-255
PARAM_VALUE 1 index 0
DATA_SOURCE 0 mt $0
DATA_SOURCE 1 index $1

lib/test_maple_tree.c mtree_test_load() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 0 mt 4096-ptr_max
PARAM_VALUE 0 mt->ma_flags 0-s32max
PARAM_VALUE 0 mt->ma_root 0
DATA_SOURCE 0 mt $0
DATA_SOURCE 1 index $1

drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_migrate.c vma_lookup() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 1 index 0-18446744073709547519
CAPPED_DATA 1 index 1
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 index 0,4096-s32max[c]
UNITS 1 index unit_byte
LOCK2 &prange->migrate_mutex
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &process_info->lock
HALF_LOCKED2 &svms->lock
TYPE_LOCK (struct svm_range)->migrate_mutex

arch/x86/kernel/cpu/sgx/encl.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 index 0-u64max[c]
UNITS 1 index unit_byte
HALF_LOCKED2 &encl->srcu
HALF_LOCKED2 &mm->mmap_lock

arch/x86/kernel/uprobes.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
RX_PATH
TASK_NOT_RUNNING
UNITS 1 index unit_byte
HALF_LOCKED2 &mm->mmap_lock

drivers/android/binder_alloc.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
RX_PATH
TASK_NOT_RUNNING
UNITS 1 index unit_byte
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/memory.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
NOSPEC 1 index
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 index 0-u64max
UNITS 1 index unit_byte
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/mincore.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
NOSPEC 1 index
NOSPEC 1 index
USER_DATA 1 index 0-u64max[c]

drivers/xen/privcmd.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
UNITS 1 index unit_byte
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

drivers/vfio/vfio_iommu_type1.c vma_lookup() -> mtree_load()

Type Parameter Key Value
CAPPED_DATA 1 index 1
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
UNITS 1 index unit_byte
LOCK2 &iommu->lock
LOCK2 &mm->mmap_lock
HALF_LOCKED2 &vgpu->cache_lock
TYPE_LOCK (struct mm_struct)->mmap_lock
TYPE_LOCK (struct vfio_iommu)->lock

mm/gup.c vma_lookup() -> mtree_load()

Type Parameter Key Value
CAPPED_DATA 1 index 1
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
NOSPEC 1 index
NOSPEC 1 index
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 index 0-u64max[c]
UNITS 1 index unit_byte
HALF_LOCKED2 &mm->mmap_lock

drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_svm.c vma_lookup() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 1 index 0-18446744073709547520
CAPPED_DATA 1 index 1
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 index 0,4096-18446744073709547520[c][u]
UNITS 1 index unit_byte
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &prange->migrate_mutex
HALF_LOCKED2 &svms->lock
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/mempolicy.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
USER_DATA 1 index 0-u64max
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

drivers/iommu/iommu-sva.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
LOCK2 &mm->mmap_lock
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct mm_struct)->mmap_lock

kernel/events/uprobes.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
UNITS 1 index unit_byte
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 rcu_read

drivers/virt/acrn/mm.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
USER_DATA 1 index 0-u64max
UNITS 1 index unit_byte

mm/migrate.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
USER_DATA 1 index 0-u64max
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

arch/x86/kvm/../../../virt/kvm/kvm_main.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 index 0-u64max[c]
UNITS 1 index unit_byte
HALF_LOCKED2 _T->lock

kernel/irq/irqdesc.c irq_to_desc() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 0 mt 384540098826899456
DATA_SOURCE 1 index $0
STR_LEN 0 mt (-1),3-15,19-20,26
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HOST_DATA 1 index 0-2147549436
NO_OVERFLOW_SIMPLE 1 index
HALF_LOCKED2 &_T->lock->msi.data->mutex
HALF_LOCKED2 &m->lock
HALF_LOCKED2 &p->lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 flags
HALF_LOCKED2 global &probing_active
HALF_LOCKED2 global &sparse_irq_lock
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 global &vector_lock
HALF_LOCKED2 rcu_read

mm/hmm.c vma_lookup() -> mtree_load()

Type Parameter Key Value
DATA_SOURCE 1 index $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 index 0-u64max[c]
UNITS 1 index unit_byte
LOCK2 &mm->mmap_lock
HALF_LOCKED2 &vm->lock
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/khugepaged.c vma_lookup() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 1 index 0,2097152-u64max
CAPPED_DATA 1 index 1
CAPPED_DATA 1 index 1
DATA_SOURCE 1 index $1
BIT_INFO 1 index 0x0,0xffffffffffe00000
BIT_INFO 1 index 0x0,0xffffffffffe00000
RX_PATH
TASK_NOT_RUNNING
USER_DATA 1 index 0,2097152-18446744073707454464[c]
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &mm->mmap_lock

drivers/gpu/drm/i915/gem/i915_gem_mman.c vma_lookup() -> mtree_load()

Type Parameter Key Value
PARAM_VALUE 1 index 0-18446744073709547520
DATA_SOURCE 1 index $1