Defined in 1 files as a function:
Referenced in 43 files:
- arch/powerpc/include/asm/vas.h, line 106
- arch/s390/kvm/pci.c, line 206
- drivers/accel/amdxdna/amdxdna_ctx.c
- drivers/accel/amdxdna/amdxdna_pci_drv.c, line 180
- drivers/accel/amdxdna/amdxdna_ubuf.c
- drivers/android/binder_alloc.c, line 1024
- drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_fence.c, line 152
- drivers/gpu/drm/amd/amdkfd/kfd_svm.c, line 550
- drivers/gpu/drm/drm_gpusvm.c, line 583
- drivers/gpu/drm/xe/xe_sync.c, line 38
- drivers/infiniband/core/umem.c
- drivers/infiniband/hw/hfi1/mmu_rb.c, line 115
- drivers/infiniband/hw/mlx5/doorbell.c, line 166
- drivers/infiniband/hw/usnic/usnic_uiom.c
- drivers/iommu/iommu.c, line 2137
- drivers/iommu/iommufd/ioas.c, line 539
- drivers/iommu/iommufd/pages.c, line 1671
- drivers/misc/ocxl/link.c, line 743
- drivers/usb/gadget/function/f_fs.c
- drivers/usb/gadget/legacy/inode.c
- drivers/vdpa/vdpa_user/vduse_dev.c, line 1335
- drivers/vfio/vfio_iommu_spapr_tce.c, line 375
- drivers/vfio/vfio_iommu_type1.c
- drivers/vhost/vhost.c, line 705
- fs/exec.c, line 289
- fs/proc/base.c
- fs/proc/task_mmu.c
- fs/proc/task_nommu.c, line 280
- include/linux/sched/mm.h
- io_uring/io_uring.c, line 2177
- io_uring/zcrx.c, line 599
- kernel/fork.c, line 1205
- kernel/kthread.c, line 1686
- kernel/trace/trace_events_user.c, line 794
- mm/khugepaged.c
- mm/ksm.c
- mm/mmap_lock.c, line 286
- mm/mmu_notifier.c
- mm/oom_kill.c
- mm/userfaultfd.c, line 2590
- mm/vmscan.c, line 3138
- rust/helpers/mm.c, line 13
- virt/kvm/kvm_main.c
Smatch caller information:
kernel/fork.c __mmput() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->binfmt | 0,4096-ptr_max |
| PARAM_VALUE | 0 | mm->binfmt->module | 0,4096-ptr_max |
| PARAM_VALUE | 0 | mm->binfmt->module->refcnt.counter | 0-s32max |
| PARAM_VALUE | 0 | mm->exe_file | 0 |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->process_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->process_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->rcu.func | 1-u64max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->request_key_auth->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->request_key_auth->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->session_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->session_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->thread_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->thread_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->user->uidhash_node.next->pprev | 1-u64max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->user_ns->work.entry.next | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->exe_file->f_security | 0 |
| PARAM_VALUE | 0 | mm->exe_file->f_task_work.func | 5179756662909861888 |
| PARAM_VALUE | 0 | mm->exe_file->f_task_work.next | 0-7661163036167163903,7661163036167163905-u64max |
| PARAM_VALUE | 0 | mm->mm_mt.ma_lock.rlock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mm_mt.ma_root | 0 |
| 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,2624917664208203776 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2212933610777083904,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->exe_file->f_cred->user->uidhash_node.next->pprev | 1-u64max |
| CAPPED_DATA | 0 | mm | 1 |
| DATA_SOURCE | 0 | mm | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | 0 | &mm->mmap_lock |
kernel/trace/trace_events_user.c user_event_mm_destroy() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | 0 | &mm->mmap_lock |
mm/oom_kill.c __do_sys_process_mrelease() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
mm/oom_kill.c __do_sys_process_mrelease() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
mm/oom_kill.c __oom_kill_process() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| CAPPED_DATA | 0 | mm | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| LOCK2 | global &oom_lock |
drivers/vhost/vhost.c vhost_detach_mm() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &dev->mutex |
mm/userfaultfd.c userfaultfd_ctx_put() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &ctx->event_wqh.lock | ||
| HALF_LOCKED2 | irq |
drivers/usb/gadget/legacy/inode.c ep_aio() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| LOCK2 | &epdata->lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct ep_data)->lock |
drivers/usb/gadget/legacy/inode.c ep_aio_complete() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | <- disables preempt | ||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| LOCK2 | &epdata->dev->lock | ||
| HALF_LOCKED2 | &cdev->lock | ||
| HALF_LOCKED2 | &pdev->lock | ||
| HALF_LOCKED2 | &priv_dev->lock | ||
| HALF_LOCKED2 | &udc->lock | ||
| HALF_LOCKED2 | cdev_flags | ||
| HALF_LOCKED2 | flags | ||
| TYPE_LOCK | (struct dev_data)->lock |
drivers/usb/gadget/legacy/inode.c ep_user_copy_worker() -> mmdrop()
| 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 |
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &pool->lock |
fs/proc/base.c __set_oom_adj() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| LOCK2 | global &oom_adj_mutex |
fs/proc/base.c mem_release() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 1-u64max |
| BUF_SIZE | 0 | mm | (-1),26 |
| BUF_SIZE | 0 | mm | (-1),26 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
kernel/kthread.c kthread_unuse_mm() -> mmdrop()
| 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 | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &access->ioas_lock | ||
| HALF_LOCKED2 | &iommu->lock | ||
| HALF_LOCKED2 | &iopt->iova_rwsem | ||
| HALF_LOCKED2 | &kvm->arch.xen.shinfo_cache.lock | ||
| HALF_LOCKED2 | &wq->uc_lock |
kernel/kthread.c mmdrop_lazy_tlb() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | mm | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &access->ioas_lock | ||
| HALF_LOCKED2 | &iommu->lock | ||
| HALF_LOCKED2 | &iopt->iova_rwsem | ||
| HALF_LOCKED2 | &kvm->arch.xen.shinfo_cache.lock | ||
| HALF_LOCKED2 | &wq->uc_lock |
drivers/accel/amdxdna/amdxdna_ctx.c amdxdna_cmd_submit() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 1-u64max |
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &xdna->client_lock | ||
| HALF_LOCKED2 | &xdna->dev_lock |
drivers/accel/amdxdna/amdxdna_ctx.c amdxdna_sched_job_cleanup() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &client->hwctx_srcu | ||
| HALF_LOCKED2 | &hwctx->priv->job_sem |
fs/proc/task_mmu.c pagemap_release() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 1-u64max |
| BUF_SIZE | 0 | mm | (-1),26 |
| BUF_SIZE | 0 | mm | (-1),26 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
fs/proc/task_mmu.c proc_map_release() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
fs/proc/task_mmu.c smaps_rollup_release() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/iommu/iommufd/pages.c iopt_release_pages() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
drivers/gpu/drm/drm_gpusvm.c drm_gpusvm_fini() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| LOCK2 | _T->lock | ||
| HALF_LOCKED2 | &vm->lock |
io_uring/zcrx.c io_zcrx_ifq_free() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &ctx->uring_lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | _T->lock |
mm/ksm.c __ksm_exit() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->binfmt->module | 0 |
| 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 | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | 0 | &mm->mmap_lock |
mm/ksm.c scan_get_next_rmap_item() -> mmdrop()
| 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 | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->list.prev | 2212933610777083904 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| LOCK2 | global &ksm_thread_mutex |
mm/ksm.c unmerge_and_remove_all_rmap_items() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mm_users.counter | 0 |
| 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 | &of->mutex | ||
| LOCK2 | global &ksm_thread_mutex | ||
| HALF_LOCKED2 | &of->prealloc_mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct kernfs_open_file)->mutex |
drivers/infiniband/core/umem.c __ib_umem_get_va() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &context->db_page_mutex |
drivers/infiniband/core/umem.c ib_umem_release() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &context->db_page_mutex | ||
| HALF_LOCKED2 | &context->page_mutex | ||
| HALF_LOCKED2 | &cq->resize_mutex | ||
| HALF_LOCKED2 | &ctx->dbrecords_page_mutex |
io_uring/io_uring.c io_ring_ctx_free() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 1-u64max |
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &pool->lock |
mm/vmscan.c iterate_mm_list() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/android/binder_alloc.c binder_alloc_deferred_release() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 1-u64max |
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
drivers/gpu/drm/xe/xe_sync.c user_fence_destroy() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
drivers/accel/amdxdna/amdxdna_ubuf.c amdxdna_get_ubuf() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
drivers/accel/amdxdna/amdxdna_ubuf.c amdxdna_ubuf_release() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
kernel/cpu.c mmdrop_lazy_tlb() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | mm | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | global &cpuhp_state_mutex | ||
| HALF_LOCKED2 | irq |
drivers/vdpa/vdpa_user/vduse_dev.c vduse_dev_dereg_umem() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| LOCK2 | &dev->domain_lock | ||
| TYPE_LOCK | (struct vduse_dev)->domain_lock |
drivers/vfio/vfio_iommu_type1.c vfio_change_dma_owner() -> mmdrop()
| 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 |
| CAPABLE | 0 | 14 | |
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| LOCK2 | &iommu->lock | ||
| TYPE_LOCK | (struct vfio_iommu)->lock |
drivers/vfio/vfio_iommu_type1.c vfio_remove_dma() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 0-1 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &container->group_lock | ||
| HALF_LOCKED2 | &iommu->lock |
drivers/infiniband/hw/usnic/usnic_uiom.c __usnic_uiom_release_tail() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/infiniband/hw/usnic/usnic_uiom.c usnic_uiom_reg_get() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
mm/mmu_notifier.c mmu_interval_notifier_remove() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->notifier_subscriptions | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->notifier_subscriptions->lock.rlock.dep_map->name | 0-255 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &uctxt->exp_mutex | ||
| HALF_LOCKED2 | &vm->lock |
mm/mmu_notifier.c mmu_notifier_free_rcu() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | bh | ||
| HALF_LOCKED2 | rcu |
mm/mmu_notifier.c mmu_notifier_unregister() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mm_count.counter | 1-s32max |
| DATA_SOURCE | 0 | mm | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
drivers/accel/amdxdna/amdxdna_pci_drv.c amdxdna_client_cleanup() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| LOCK2 | &xdna->client_lock | ||
| LOCK2 | &xdna->dev_lock | ||
| TYPE_LOCK | (struct amdxdna_dev)->client_lock | ||
| TYPE_LOCK | (struct amdxdna_dev)->dev_lock |
drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_svm.c svm_range_bo_destroy() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL |
drivers/iommu/iommufd/ioas.c change_mm() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| LOCK2 | &ictx->ioas_creation_lock | ||
| TYPE_LOCK | (struct iommufd_ctx)->ioas_creation_lock |
drivers/infiniband/hw/mlx5/doorbell.c mlx5_ib_db_unmap_user() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| LOCK2 | &context->db_page_mutex | ||
| TYPE_LOCK | (struct mlx5_ib_ucontext)->db_page_mutex |
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_fence.c amdkfd_fence_release() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| LOCK2 | rcu_read |
drivers/iommu/iommu.c iommu_domain_free() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &_dev->mutex | ||
| HALF_LOCKED2 | &container->group_lock | ||
| HALF_LOCKED2 | &dev->mutex | ||
| HALF_LOCKED2 | &group->mutex | ||
| HALF_LOCKED2 | &iommu->lock | ||
| HALF_LOCKED2 | &rproc->lock | ||
| HALF_LOCKED2 | global &component_mutex | ||
| HALF_LOCKED2 | global &iommu_sva_lock |
mm/mmap_lock.c vma_start_read() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
drivers/infiniband/hw/hfi1/mmu_rb.c hfi1_mmu_rb_unregister() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->notifier_subscriptions->lock.rlock.dep_map->name | 0-255 |
| CAPPED_DATA | 0 | mm | 1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
drivers/usb/gadget/function/f_fs.c ffs_epfile_read_iter() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &pool->lock |
drivers/usb/gadget/function/f_fs.c ffs_epfile_write_iter() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &pool->lock |
drivers/usb/gadget/function/f_fs.c ffs_user_copy_worker() -> mmdrop()
| 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 |
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &pool->lock |
arch/x86/kvm/../../../virt/kvm/kvm_main.c kvm_create_vm() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
arch/x86/kvm/../../../virt/kvm/kvm_main.c kvm_destroy_vm() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &device->dev_set->lock | ||
| HALF_LOCKED2 | &dst_kvm->lock | ||
| HALF_LOCKED2 | &kvm->lock | ||
| HALF_LOCKED2 | global &sev_mirror_lock |
mm/khugepaged.c __khugepaged_exit() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->binfmt->module | 0 |
| PARAM_VALUE | 0 | mm->context.global_asid | 0 |
| PARAM_VALUE | 0 | mm->context.ldt | 0 |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->process_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->process_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->request_key_auth->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->request_key_auth->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->session_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->session_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->thread_keyring->user->qnbytes | s32min-s32max |
| PARAM_VALUE | 0 | mm->exe_file->f_cred->thread_keyring->user->qnkeys | s32min-s32max |
| PARAM_VALUE | 0 | mm->ioctx_table | 0 |
| PARAM_VALUE | 0 | mm->mm_cid.pcpu | 0 |
| PARAM_VALUE | 0 | mm->mm_id | 0 |
| PARAM_VALUE | 0 | mm->mm_users.counter | 0 |
| PARAM_VALUE | 0 | mm->mmap_lock.dep_map->name | 0-255 |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->handoff_set | 0-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 | 0 |
| PARAM_VALUE | 0 | mm->sc_stat.pcpu_sched | 0 |
| CAPPED_DATA | 0 | mm | 1 |
| CAPPED_DATA | 0 | mm->uprobes_state.xol_area | 1 |
| DATA_SOURCE | 0 | mm | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | 0 | &mm->mmap_lock |
mm/khugepaged.c collect_mm_slot() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mm_users.counter | 0 |
| PREEMPT_ADD | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| LOCK2 | global &khugepaged_mm_lock |
mm/khugepaged.c madvise_collapse() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| PARAM_VALUE | 0 | mm->mmap_lock.first_waiter->type | 0-1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | 0 | &mm->mmap_lock |
fs/exec.c bprm_mm_init() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 4096-ptr_max |
| DATA_SOURCE | 0 | mm | r mm_alloc |
| NOCHECK_CALL |
fs/exec.c mmdrop_lazy_tlb() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | mm | $0 |
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| LOCK2 | &tsk->signal->exec_update_lock | ||
| TYPE_LOCK | (struct signal_struct)->exec_update_lock |
kernel/sched/core.c mmdrop_lazy_tlb() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 0-7138969414219841535,7138969414219841537-u64max |
| DATA_SOURCE | 0 | mm | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |
| HALF_LOCKED2 | global &cpuhp_state_mutex |
kernel/sched/core.c mmdrop_sched() -> mmdrop()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | mm | 1-u64max |
| CAPPED_DATA | 0 | mm | 1 |
| DATA_SOURCE | 0 | mm | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NOCHECK_CALL | |||
| UNITS | 0 | mm | unit_byte |