Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

mm/madvise.c mmap_assert_locked() -> rwsem_assert_held()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

kernel/trace/trace_events_user.c mmap_assert_locked() -> rwsem_assert_held()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &mm->mmap_lock
HALF_LOCKED2 &group->reg_mutex
HALF_LOCKED2 global &event_mutex
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/pagewalk.c mmap_assert_locked() -> rwsem_assert_held()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &init_mm.mmap_lock

mm/mmap.c mmap_assert_locked() -> rwsem_assert_held()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock

mm/userfaultfd.c mmap_assert_locked() -> rwsem_assert_held()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &mm->mmap_lock

kernel/bpf/stackmap.c mmap_assert_locked() -> rwsem_assert_held()

Type Parameter Key Value
NOCHECK_CALL
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

fs/proc/task_mmu.c mmap_assert_locked() -> rwsem_assert_held()

Type Parameter Key Value
NOCHECK_CALL
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/rmap.c mmap_assert_locked() -> rwsem_assert_held()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mm->mmap_lock

drivers/gpu/drm/drm_gpusvm.c mmap_assert_locked() -> rwsem_assert_held()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &mm->mmap_lock
LOCK2 &vm->lock
TYPE_LOCK (struct mm_struct)->mmap_lock
TYPE_LOCK (struct xe_vm)->lock

drivers/gpu/drm/drm_pagemap.c mmap_assert_locked() -> rwsem_assert_held()

Type Parameter Key Value
NOCHECK_CALL
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/ksm.c mmap_assert_locked() -> rwsem_assert_held()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &m->lock
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock
TYPE_LOCK (struct seq_file)->lock

fs/namespace.c do_listmount() -> rwsem_assert_held()

Type Parameter Key Value
PARAM_VALUE 0 sem 6177550469095600128
NOCHECK_CALL
LOCK2 global &namespace_sem

fs/namespace.c grab_requested_root() -> rwsem_assert_held()

Type Parameter Key Value
PARAM_VALUE 0 sem 6177550469095600128
NOCHECK_CALL
LOCK2 global &namespace_sem

mm/memory.c mmap_assert_locked() -> rwsem_assert_held()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

fs/xfs/xfs_inode.c xfs_assert_ilocked() -> rwsem_assert_held()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ailp->ail_lock
HALF_LOCKED2 &bp->b_sema
HALF_LOCKED2 &cil->xc_ctx_lock
HALF_LOCKED2 &pool->lock

fs/xfs/xfs_inode.c xfs_assert_ilocked() -> rwsem_assert_held()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ailp->ail_lock
HALF_LOCKED2 &bp->b_sema
HALF_LOCKED2 &cil->xc_ctx_lock
HALF_LOCKED2 &pool->lock

fs/xfs/xfs_inode.c xfs_assert_ilocked() -> rwsem_assert_held()

Type Parameter Key Value
PARAM_VALUE 0 sem 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &ailp->ail_lock
HALF_LOCKED2 &bp->b_sema
HALF_LOCKED2 &cil->xc_ctx_lock
HALF_LOCKED2 &pool->lock

drivers/vfio/vfio_iommu_type1.c mmap_assert_locked() -> rwsem_assert_held()

Type Parameter Key Value
NOCHECK_CALL
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 mmap_assert_locked() -> rwsem_assert_held()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

mm/mmap_lock.c mmap_assert_locked() -> rwsem_assert_held()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &mm->mmap_lock
HALF_LOCKED2 &m->lock
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/migrate.c mmap_assert_locked() -> rwsem_assert_held()

Type Parameter Key Value
NOCHECK_CALL
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/hmm.c mmap_assert_locked() -> rwsem_assert_held()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &mm->mmap_lock
HALF_LOCKED2 &vm->lock
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/khugepaged.c mmap_assert_locked() -> rwsem_assert_held()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL