Defined in 1 files as a function:

Referenced in 10 files:

Smatch caller information:

mm/madvise.c make_pte_marker() -> swp_entry_to_pte()

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

mm/huge_memory.c __split_huge_pmd_locked() -> swp_entry_to_pte()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &vma->vm_private_data->rw_sema

mm/huge_memory.c __split_huge_pmd_locked() -> swp_entry_to_pte()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read
HALF_LOCKED2 &vma->vm_private_data->rw_sema

mm/userfaultfd.c make_pte_marker() -> swp_entry_to_pte()

Type Parameter Key Value
LOCK2 &state.ctx->map_changing_lock
TYPE_LOCK (struct userfaultfd_ctx)->map_changing_lock

mm/swapfile.c softleaf_to_pte() -> swp_entry_to_pte()

Type Parameter Key Value
DATA_SOURCE 0 entry $0

mm/swapfile.c unuse_pte() -> swp_entry_to_pte()

Type Parameter Key Value
DATA_SOURCE 0 entry $3
CAPABLE 0 21
LOCK2 &mm->mmap_lock
LOCK2 ptl
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/swapfile.c unuse_pte() -> swp_entry_to_pte()

Type Parameter Key Value
CAPABLE 0 21
LOCK2 &mm->mmap_lock
LOCK2 ptl
TYPE_LOCK (struct mm_struct)->mmap_lock

fs/proc/task_mmu.c make_pte_marker() -> swp_entry_to_pte()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &vma->vm_file->f_mapping->i_mmap_rwsem
HALF_LOCKED2 ptl

mm/rmap.c make_device_exclusive() -> swp_entry_to_pte()

Type Parameter Key Value
DATA_SOURCE 0 entry r make_device_exclusive_entry
LOCK2 &mm->mmap_lock
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/rmap.c swp_pte_prepare() -> swp_entry_to_pte()

Type Parameter Key Value
DATA_SOURCE 0 entry $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &anon_vma->root->rwsem
HALF_LOCKED2 &folio->private->lock

mm/rmap.c try_to_migrate_one() -> swp_entry_to_pte()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &anon_vma->root->rwsem
HALF_LOCKED2 &folio->private->lock
HALF_LOCKED2 &resv_map->rw_sema
HALF_LOCKED2 &vma->vm_private_data->rw_sema

mm/rmap.c try_to_migrate_one() -> swp_entry_to_pte()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &anon_vma->root->rwsem
HALF_LOCKED2 &folio->private->lock
HALF_LOCKED2 &resv_map->rw_sema
HALF_LOCKED2 &vma->vm_private_data->rw_sema

mm/rmap.c try_to_migrate_one() -> swp_entry_to_pte()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &anon_vma->root->rwsem
HALF_LOCKED2 &folio->private->lock
HALF_LOCKED2 &resv_map->rw_sema
HALF_LOCKED2 &vma->vm_private_data->rw_sema

mm/rmap.c try_to_unmap_one() -> swp_entry_to_pte()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &anon_vma->root->rwsem
HALF_LOCKED2 &folio->private->lock

mm/rmap.c try_to_unmap_poisoned_hugetlb_one() -> swp_entry_to_pte()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &anon_vma->root->rwsem
HALF_LOCKED2 &folio->private->lock
HALF_LOCKED2 &resv_map->rw_sema
HALF_LOCKED2 &vma->vm_private_data->rw_sema

mm/mprotect.c change_softleaf_pte() -> swp_entry_to_pte()

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

mm/mprotect.c change_softleaf_pte() -> swp_entry_to_pte()

Type Parameter Key Value
DATA_SOURCE 0 entry r make_readable_device_private_entry
RX_PATH
TASK_NOT_RUNNING
LOCK2 ptl
HALF_LOCKED2 &mm->mmap_lock

mm/mprotect.c make_pte_marker() -> swp_entry_to_pte()

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

mm/hugetlb.c copy_hugetlb_page_range() -> swp_entry_to_pte()

Type Parameter Key Value
DATA_SOURCE 0 entry r make_readable_migration_entry
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mm->mmap_lock
LOCK2 &oldmm->mmap_lock
LOCK2 src_ptl
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/hugetlb.c hugetlb_change_protection() -> swp_entry_to_pte()

Type Parameter Key Value
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
LOCK2 &vma->vm_file->f_mapping->i_mmap_rwsem
HALF_LOCKED2 &dst_mm->mmap_lock
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct address_space)->i_mmap_rwsem

mm/hugetlb.c make_pte_marker() -> swp_entry_to_pte()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &oldmm->mmap_lock
HALF_LOCKED2 &state.ctx->map_changing_lock
HALF_LOCKED2 &vma->vm_file->f_mapping->i_mmap_rwsem
HALF_LOCKED2 src_ptl

mm/migrate_device.c migrate_vma_collect_pmd() -> swp_entry_to_pte()

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

mm/migrate_device.c migrate_vma_insert_page() -> swp_entry_to_pte()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &drm->dmem->mutex

mm/memory.c copy_nonpresent_pte() -> swp_entry_to_pte()

Type Parameter Key Value
DATA_SOURCE 0 entry r make_readable_device_private_entry
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mm->mmap_lock
LOCK2 &oldmm->mmap_lock
LOCK2 dst_ptl
LOCK2 rcu_read
LOCK2 src_ptl
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/memory.c make_pte_marker() -> swp_entry_to_pte()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mm->mmap_lock
HALF_LOCKED2 &oldmm->mmap_lock
HALF_LOCKED2 dst_ptl
HALF_LOCKED2 rcu_read
HALF_LOCKED2 src_ptl

mm/memory.c softleaf_to_pte() -> swp_entry_to_pte()

Type Parameter Key Value
DATA_SOURCE 0 entry $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mm->mmap_lock
LOCK2 &oldmm->mmap_lock
LOCK2 dst_ptl
LOCK2 rcu_read
LOCK2 src_ptl
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/debug_vm_pgtable.c pte_swap_exclusive_tests() -> swp_entry_to_pte()

Type Parameter Key Value
BIT_INFO 0 entry 0x0,0x0

mm/debug_vm_pgtable.c pte_swap_soft_dirty_tests() -> swp_entry_to_pte()

Type Parameter Key Value

mm/debug_vm_pgtable.c pte_swap_tests() -> swp_entry_to_pte()

Type Parameter Key Value

mm/debug_vm_pgtable.c softleaf_to_pte() -> swp_entry_to_pte()

Type Parameter Key Value
DATA_SOURCE 0 entry $0

mm/migrate.c softleaf_to_pte() -> swp_entry_to_pte()

Type Parameter Key Value
DATA_SOURCE 0 entry $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &anon_vma->root->rwsem
HALF_LOCKED2 &folio->private->lock