Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 11 files:

Smatch caller information:

drivers/gpu/drm/i915/selftests/i915_selftest.c __run_selftests() -> mmput_async()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 0 mm->mmap_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 mm->mmap_lock.first_waiter->type 0-1
CAPPED_DATA 0 mm 1
DATA_SOURCE 0 mm r get_selftest_mm
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/gpu/drm/i915/selftests/i915_selftest.c __run_selftests() -> mmput_async()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 0 mm->mmap_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 mm->mmap_lock.first_waiter->type 0-1
CAPPED_DATA 0 mm 1
DATA_SOURCE 0 mm r get_selftest_mm
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/infiniband/core/umem_odp.c ib_umem_odp_map_dma_and_lock() -> mmput_async()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 0 mm->mm_users.counter 0-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 mm unit_byte
HALF_LOCKED2 &umem_odp->umem_mutex

drivers/gpu/drm/drm_pagemap.c drm_pagemap_evict_to_ram() -> mmput_async()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 0 mm->mm_users.counter 0-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 ttm_bo->base.resv

arch/x86/kernel/cpu/sgx/encl.c sgx_encl_cpumask() -> mmput_async()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 0 mm->mm_users.counter 0-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 mm unit_byte
LOCK2 &encl->srcu
HALF_LOCKED2 &encl->lock
HALF_LOCKED2 &encl->lock
TYPE_LOCK (struct sgx_encl)->lock
TYPE_LOCK (struct sgx_encl)->srcu

arch/x86/kernel/cpu/sgx/encl.c sgx_encl_get_mem_cgroup() -> mmput_async()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 0 mm->mm_users.counter 0-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 mm unit_byte
LOCK2 &encl->lock
LOCK2 &encl->srcu
TYPE_LOCK (struct sgx_encl)->lock
TYPE_LOCK (struct sgx_encl)->srcu

arch/x86/kernel/cpu/sgx/encl.c sgx_zap_enclave_ptes() -> mmput_async()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 0 mm->mm_users.counter 0-s32max
PARAM_VALUE 0 mm->mmap_lock.dep_map->name 0-255
PARAM_VALUE 0 mm->mmap_lock.first_waiter->handoff_set 1
PARAM_VALUE 0 mm->mmap_lock.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 mm->mmap_lock.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 mm->mmap_lock.first_waiter->type 0-1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 mm unit_byte
LOCK2 &encl->srcu
TYPE_LOCK (struct sgx_encl)->srcu

drivers/android/binder_alloc.c binder_alloc_free_page() -> mmput_async()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 0 mm->mm_users.counter 0-s32max
PARAM_VALUE 0 mm->mmap_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 mm->mmap_lock.first_waiter->type 0-1
CAPPED_DATA 0 mm 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 mm unit_byte

drivers/android/binder_alloc.c binder_alloc_free_page() -> mmput_async()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 0 mm->mm_users.counter 0-s32max
PARAM_VALUE 0 mm->mmap_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 mm->mmap_lock.first_waiter->type 0-1
CAPPED_DATA 0 mm 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 mm unit_byte

drivers/android/binder_alloc.c binder_install_single_page() -> mmput_async()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 0 mm->mm_users.counter 0-s32max
PARAM_VALUE 0 mm->mmap_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 mm->mmap_lock.first_waiter->type 0-1
CAPPED_DATA 0 mm 1
NOCHECK_CALL
UNITS 0 mm unit_byte

arch/x86/kernel/cpu/sgx/main.c sgx_reclaimer_age() -> mmput_async()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 0 mm->mm_users.counter 0-s32max
PARAM_VALUE 0 mm->mmap_lock.dep_map->name 0-255
PARAM_VALUE 0 mm->mmap_lock.first_waiter->handoff_set 1
PARAM_VALUE 0 mm->mmap_lock.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 mm->mmap_lock.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 mm->mmap_lock.first_waiter->type 0-1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 mm unit_byte
LOCK2 &encl->srcu
TYPE_LOCK (struct sgx_encl)->srcu

drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_svm.c svm_range_deferred_list_work() -> mmput_async()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 0 mm->mmap_lock.dep_map->name 0-255
PARAM_VALUE 0 mm->mmap_lock.first_waiter->handoff_set 1
PARAM_VALUE 0 mm->mmap_lock.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 mm->mmap_lock.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 mm->mmap_lock.first_waiter->type 0-1
PARAM_VALUE 0 mm->mmap_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 mm->notifier_subscriptions->has_itree 0-1
NOCHECK_CALL
UNITS 0 mm unit_byte
HALF_LOCKED2 &pool->lock

drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_svm.c svm_range_evict_svm_bo() -> mmput_async()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 0 mm->mm_users.counter 0-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_svm.c svm_range_evict_svm_bo() -> mmput_async()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 0 mm->mm_users.counter 0-s32max
PARAM_VALUE 0 mm->mmap_lock.dep_map->name 0-255
PARAM_VALUE 0 mm->mmap_lock.first_waiter->handoff_set 1
PARAM_VALUE 0 mm->mmap_lock.first_waiter->type 0-1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

kernel/bpf/task_iter.c ____bpf_find_vma() -> mmput_async()

Type Parameter Key Value
PARAM_VALUE 0 mm 4096-ptr_max
PARAM_VALUE 0 mm->mmap_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 mm->mmap_lock.first_waiter->type 0-1
NOCHECK_CALL
UNITS 0 mm unit_byte
HALF_LOCKED2 0 &mm->mmap_lock

kernel/bpf/task_iter.c bpf_iter_mmput_async() -> mmput_async()

Type Parameter Key Value
DATA_SOURCE 0 mm $0
NOCHECK_CALL
UNITS 0 mm unit_byte

drivers/accel/amdxdna/aie2_ctx.c aie2_sched_notify() -> mmput_async()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 mm unit_byte
HALF_LOCKED2 &pool->lock