Lines Matching refs:vma
345 static int cramfs_physmem_mmap(struct file *file, struct vm_area_struct *vma) in cramfs_physmem_mmap() argument
350 unsigned long address, pgoff = vma->vm_pgoff; in cramfs_physmem_mmap()
354 ret = generic_file_readonly_mmap(file, vma); in cramfs_physmem_mmap()
365 if (vma->vm_flags & VM_WRITE) in cramfs_physmem_mmap()
372 pages = min(vma_pages(vma), max_pages - pgoff); in cramfs_physmem_mmap()
394 if (pages == vma_pages(vma)) { in cramfs_physmem_mmap()
401 ret = remap_pfn_range(vma, vma->vm_start, address >> PAGE_SHIFT, in cramfs_physmem_mmap()
402 pages * PAGE_SIZE, vma->vm_page_prot); in cramfs_physmem_mmap()
410 vm_flags_set(vma, VM_MIXEDMAP); in cramfs_physmem_mmap()
414 vmf = vmf_insert_mixed(vma, vma->vm_start + off, in cramfs_physmem_mmap()
424 pgoff, address, pages, vma_pages(vma), vma->vm_start, in cramfs_physmem_mmap()
425 (unsigned long long)pgprot_val(vma->vm_page_prot)); in cramfs_physmem_mmap()
437 static int cramfs_physmem_mmap(struct file *file, struct vm_area_struct *vma) in cramfs_physmem_mmap() argument
439 return is_nommu_shared_mapping(vma->vm_flags) ? 0 : -ENOSYS; in cramfs_physmem_mmap()