• Home
  • Raw
  • Download

Lines Matching refs:vma

27 	struct vm_area_struct *vma;  member
79 struct vm_area_struct *vma; in __scif_zap_mmaps() local
85 vma = info->vma; in __scif_zap_mmaps()
86 size = vma->vm_end - vma->vm_start; in __scif_zap_mmaps()
87 zap_vma_ptes(vma, vma->vm_start, size); in __scif_zap_mmaps()
90 __func__, ep, info->vma, size); in __scif_zap_mmaps()
169 static int scif_insert_vma(struct scif_endpt *ep, struct vm_area_struct *vma) in scif_insert_vma() argument
179 info->vma = vma; in scif_insert_vma()
188 static void scif_delete_vma(struct scif_endpt *ep, struct vm_area_struct *vma) in scif_delete_vma() argument
196 if (info->vma == vma) { in scif_delete_vma()
382 int nr_pages, struct vm_area_struct *vma) in scif_rma_list_mmap() argument
407 err = remap_pfn_range(vma, in scif_rma_list_mmap()
408 vma->vm_start + in scif_rma_list_mmap()
412 vma->vm_page_prot); in scif_rma_list_mmap()
533 static void scif_vma_open(struct vm_area_struct *vma) in scif_vma_open() argument
535 struct vma_pvt *vmapvt = vma->vm_private_data; in scif_vma_open()
539 vma->vm_start, vma->vm_end); in scif_vma_open()
540 scif_insert_vma(vmapvt->ep, vma); in scif_vma_open()
551 static void scif_munmap(struct vm_area_struct *vma) in scif_munmap() argument
554 struct vma_pvt *vmapvt = vma->vm_private_data; in scif_munmap()
555 int nr_pages = (vma->vm_end - vma->vm_start) >> PAGE_SHIFT; in scif_munmap()
564 vma->vm_start, vma->vm_end); in scif_munmap()
567 (vma->vm_pgoff) << PAGE_SHIFT; in scif_munmap()
573 req.nr_bytes = vma->vm_end - vma->vm_start; in scif_munmap()
574 req.prot = vma->vm_flags & (VM_READ | VM_WRITE); in scif_munmap()
592 vma->vm_ops = NULL; in scif_munmap()
593 vma->vm_private_data = NULL; in scif_munmap()
595 scif_delete_vma(ep, vma); in scif_munmap()
611 int scif_mmap(struct vm_area_struct *vma, scif_epd_t epd) in scif_mmap() argument
616 s64 start_offset = vma->vm_pgoff << PAGE_SHIFT; in scif_mmap()
617 int nr_pages = (vma->vm_end - vma->vm_start) >> PAGE_SHIFT; in scif_mmap()
630 err = scif_insert_vma(ep, vma); in scif_mmap()
636 scif_delete_vma(ep, vma); in scif_mmap()
645 req.nr_bytes = vma->vm_end - vma->vm_start; in scif_mmap()
646 req.prot = vma->vm_flags & (VM_READ | VM_WRITE); in scif_mmap()
661 vma->vm_page_prot = pgprot_writecombine(vma->vm_page_prot); in scif_mmap()
675 vma->vm_flags |= VM_DONTCOPY | VM_DONTEXPAND | VM_DONTDUMP; in scif_mmap()
678 vma->vm_flags |= VM_IO | VM_PFNMAP; in scif_mmap()
681 err = scif_rma_list_mmap(window, start_offset, nr_pages, vma); in scif_mmap()
688 vma->vm_ops = &scif_vm_ops; in scif_mmap()
689 vma->vm_private_data = vmapvt; in scif_mmap()
696 scif_delete_vma(ep, vma); in scif_mmap()