Thomas Zimmermann <tzimmermann@xxxxxxx> writes: > Use the mmap callback in struct drm_gem_object_funcs to set the > VM flags. Replace a number of mmap helpers in omapdrm with their > GEM helper counterparts. Generate DRM's file-operations instance > with GEM's DEFINE_DRM_GEM_FOPS. > > Signed-off-by: Thomas Zimmermann <tzimmermann@xxxxxxx> > Cc: Tomi Valkeinen <tomi.valkeinen@xxxxxxxxxxxxxxxx> > --- > +static int omap_gem_object_mmap(struct drm_gem_object *obj, struct vm_area_struct *vma) > { > struct omap_gem_object *omap_obj = to_omap_bo(obj); > > - vm_flags_mod(vma, VM_MIXEDMAP, VM_PFNMAP); > + vm_flags_set(vma, VM_PFNMAP | VM_DONTEXPAND | VM_DONTDUMP | VM_IO | VM_MIXEDMAP); > > if (omap_obj->flags & OMAP_BO_WC) { > vma->vm_page_prot = pgprot_writecombine(vm_get_page_prot(vma->vm_flags)); > @@ -563,12 +548,14 @@ int omap_gem_mmap_obj(struct drm_gem_object *obj, > * address_space (so unmap_mapping_range does what we want, > * in particular in the case of mmap'd dmabufs) > */ > - vma->vm_pgoff = 0; > + vma->vm_pgoff -= drm_vma_node_start(&obj->vma_node); > vma_set_file(vma, obj->filp); > > vma->vm_page_prot = vm_get_page_prot(vma->vm_flags); > } > > + vma->vm_page_prot = pgprot_decrypted(vma->vm_page_prot); > + > return 0; > } > I think this rework deserves a more elaborated commit message. Reviewed-by: Javier Martinez Canillas <javierm@xxxxxxxxxx> -- Best regards, Javier Martinez Canillas Core Platforms Red Hat