Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

mm/huge_memory.c __folio_try_dup_anon_rmap() -> folio_needs_cow_for_dma()

Type Parameter Key Value
PARAM_VALUE 0 vma 4096-ptr_max
PARAM_VALUE 0 vma->anon_name 0,4096-ptr_max
PARAM_VALUE 0 vma->flags.__vma_flags 4096-ptr_max
PARAM_VALUE 0 vma->pfnmap_track_ctx 0,4096-ptr_max
PARAM_VALUE 0 vma->vm_file->f_inode->i_wb->dwork.wq->dfl_pwq 0-s64max
PARAM_VALUE 0 vma->vm_file->f_inode->i_wb->dwork.wq->saved_max_active s32min-s32max
PARAM_VALUE 0 vma->vm_file->f_inode->i_wb->dwork.wq->saved_min_active s32min-s32max
PARAM_VALUE 0 vma->vm_mm 4096-ptr_max
PARAM_VALUE 0 vma->vm_mm->notifier_subscriptions->has_itree 0-1
PARAM_VALUE 0 vma->vm_ops->open 0,4096-ptr_max
PARAM_VALUE 1 folio 4096-ptr_max
PARAM_VALUE 1 folio->mapping 1-u64max
CAPPED_DATA 1 folio 1
DATA_SOURCE 0 vma $4
DATA_SOURCE 1 folio $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mm->mmap_lock
LOCK2 &oldmm->mmap_lock
LOCK2 src_ptl
HALF_LOCKED2 dst_ptl
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/hugetlb.c hugetlb_try_dup_anon_rmap() -> folio_needs_cow_for_dma()

Type Parameter Key Value
PARAM_VALUE 0 vma 4096-ptr_max
PARAM_VALUE 0 vma->anon_name 0,4096-ptr_max
PARAM_VALUE 0 vma->flags.__vma_flags 4096-ptr_max
PARAM_VALUE 0 vma->pfnmap_track_ctx 0,4096-ptr_max
PARAM_VALUE 0 vma->vm_end 1-u64max
PARAM_VALUE 0 vma->vm_file 4096-ptr_max
PARAM_VALUE 0 vma->vm_mm 4096-ptr_max
PARAM_VALUE 0 vma->vm_mm->iommu_mm->pasid 0-4294967295
PARAM_VALUE 0 vma->vm_mm->notifier_subscriptions->has_itree 0-1
PARAM_VALUE 0 vma->vm_ops->access 0,4096-ptr_max
PARAM_VALUE 0 vma->vm_ops->close 0,4096-ptr_max
PARAM_VALUE 0 vma->vm_ops->fault 0,4096-ptr_max
PARAM_VALUE 0 vma->vm_ops->find_normal_page 0,7701293790578647040
PARAM_VALUE 0 vma->vm_ops->get_policy 0,4616414333962629120,4828607683292463104,8976238440117981184
PARAM_VALUE 0 vma->vm_ops->huge_fault 0,4096-ptr_max
PARAM_VALUE 0 vma->vm_ops->map_pages 0,3176874211750576128,5698041470598119424
PARAM_VALUE 0 vma->vm_ops->mapped 0,2789832010611625984,3142991724353884160,4592370608720261120,7407017443569868800
PARAM_VALUE 0 vma->vm_ops->may_split 0,4096-ptr_max
PARAM_VALUE 0 vma->vm_ops->mprotect 0,1325936775103746048
PARAM_VALUE 0 vma->vm_ops->mremap 0,3413040981811294208,4989069621795885056,4994350079563595776,5833245582275645440,6365626294419795968
PARAM_VALUE 0 vma->vm_ops->name 0,4895095206942478336,8589198899344281600
PARAM_VALUE 0 vma->vm_ops->open 0,4096-ptr_max
PARAM_VALUE 0 vma->vm_ops->page_mkwrite 0,4096-ptr_max
PARAM_VALUE 0 vma->vm_ops->pagesize 0,1990568509668610048,3507690403222872064,7130740471179698176
PARAM_VALUE 0 vma->vm_ops->pfn_mkwrite 0,612326616561868800,6156956592968101888,7842464310733856768,8888598022343528448,8992640491671437312,9170345393898926080
PARAM_VALUE 0 vma->vm_ops->set_policy 0,1009606358897582080,5296408793753837568,9131342062321688576
PARAM_VALUE 0 vma->vm_ops->uffd_ops 0,2881150691235323904,7418773112577396736
PARAM_VALUE 0 vma->vm_policy->refcnt.counter 1
PARAM_VALUE 0 vma->vm_private_data->rw_sema.dep_map->name 0-255
PARAM_VALUE 0 vma->vm_private_data->rw_sema.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 vma->vm_private_data->rw_sema.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 vma->vm_private_data->rw_sema.first_waiter->type 0-1
PARAM_VALUE 1 folio 4096-ptr_max
PARAM_VALUE 1 folio->mapping 1-u64max
CAPPED_DATA 0 vma->vm_policy 1
DATA_SOURCE 0 vma $1
DATA_SOURCE 1 folio $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 &mm->mmap_lock
LOCK2 &oldmm->mmap_lock
LOCK2 src_ptl
TYPE_LOCK (struct mm_struct)->mmap_lock

mm/memory.c __folio_try_dup_anon_rmap() -> folio_needs_cow_for_dma()

Type Parameter Key Value
PARAM_VALUE 0 vma 4096-ptr_max
PARAM_VALUE 0 vma->anon_name 0,4096-ptr_max
PARAM_VALUE 0 vma->flags.__vma_flags 4096-ptr_max
PARAM_VALUE 0 vma->pfnmap_track_ctx 0,4096-ptr_max
PARAM_VALUE 0 vma->vm_file->f_inode->i_wb->dwork.wq->dfl_pwq 0-s64max
PARAM_VALUE 0 vma->vm_file->f_inode->i_wb->dwork.wq->saved_max_active s32min-s32max
PARAM_VALUE 0 vma->vm_file->f_inode->i_wb->dwork.wq->saved_min_active s32min-s32max
PARAM_VALUE 0 vma->vm_mm 4096-ptr_max
PARAM_VALUE 0 vma->vm_mm->iommu_mm->pasid 0-4294967295
PARAM_VALUE 0 vma->vm_mm->notifier_subscriptions->has_itree 0-1
PARAM_VALUE 0 vma->vm_ops->open 0,4096-ptr_max
PARAM_VALUE 1 folio 4096-ptr_max
PARAM_VALUE 1 folio->mapping 1-u64max
CAPPED_DATA 1 folio 1
DATA_SOURCE 0 vma $4
DATA_SOURCE 1 folio $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