Lines Matching refs:vma
83 * structure is pointed to by the vma->vm_private_data field in the vma struct.
85 * This structure is shared by all vma's that are split off from the
86 * original vma when split_vma()'s are done.
145 mspec_open(struct vm_area_struct *vma)
149 vdata = vma->vm_private_data;
157 * belonging to all the vma's sharing this vma_data structure.
160 mspec_close(struct vm_area_struct *vma)
166 vdata = vma->vm_private_data;
200 mspec_fault(struct vm_area_struct *vma, struct vm_fault *vmf)
205 struct vma_data *vdata = vma->vm_private_data;
236 vm_insert_pfn(vma, (unsigned long)vmf->virtual_address, pfn);
250 * Called when mmapping the device. Initializes the vma with a fault handler
255 mspec_mmap(struct file *file, struct vm_area_struct *vma,
261 if (vma->vm_pgoff != 0)
264 if ((vma->vm_flags & VM_SHARED) == 0)
267 if ((vma->vm_flags & VM_WRITE) == 0)
270 pages = vma_pages(vma);
281 vdata->vm_start = vma->vm_start;
282 vdata->vm_end = vma->vm_end;
287 vma->vm_private_data = vdata;
289 vma->vm_flags |= VM_IO | VM_PFNMAP | VM_DONTEXPAND | VM_DONTDUMP;
291 vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
292 vma->vm_ops = &mspec_vm_ops;
298 fetchop_mmap(struct file *file, struct vm_area_struct *vma)
300 return mspec_mmap(file, vma, MSPEC_FETCHOP);
304 cached_mmap(struct file *file, struct vm_area_struct *vma)
306 return mspec_mmap(file, vma, MSPEC_CACHED);
310 uncached_mmap(struct file *file, struct vm_area_struct *vma)
312 return mspec_mmap(file, vma, MSPEC_UNCACHED);