Daniel Vetter <daniel@xxxxxxxx> writes: > On Mon, Nov 26, 2018 at 04:36:21PM -0800, Eric Anholt wrote: >> Noralf Trønnes <noralf@xxxxxxxxxxx> writes: >> > +static void drm_gem_shmem_vm_close(struct vm_area_struct *vma) >> > +{ >> > + struct drm_gem_object *obj = vma->vm_private_data; >> > + struct drm_gem_shmem_object *shmem = to_drm_gem_shmem_obj(obj); >> > + >> > + drm_gem_shmem_put_pages(shmem); >> > + drm_gem_vm_close(vma); >> > +} >> > + >> > +const struct vm_operations_struct drm_gem_shmem_vm_ops = { >> > + .fault = drm_gem_shmem_fault, >> > + .open = drm_gem_vm_open, >> > + .close = drm_gem_shmem_vm_close, >> > +}; >> > +EXPORT_SYMBOL_GPL(drm_gem_shmem_vm_ops); >> >> I just saw a warning from drm_gem_shmem_put_pages() for >> !shmem->pages_use_count -- I think drm_gem_vm_open() needs to >> drm_gem_shmem_get_pages(). > > Yeah we need a drm_gem_shmem_vm_open here. Adding one of those fixed my refcounting issues, so I've sent out a v6 with it.
Attachment:
signature.asc
Description: PGP signature
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel