Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

drm/vkms: Drop custom vkms_dumb_map().

This is the same as the default drm_gem_dumb_map_offset()
implementation, except that this one missed the ban on userspace
mapping an imported dmabuf (which seems like intended common behavior
for drivers).

Signed-off-by: Eric Anholt <eric@anholt.net>
Link: https://patchwork.freedesktop.org/patch/msgid/20181126215929.20546-1-eric@anholt.net
Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>

-30
-1
drivers/gpu/drm/vkms/vkms_drv.c
··· 68 68 .release = vkms_release, 69 69 .fops = &vkms_driver_fops, 70 70 .dumb_create = vkms_dumb_create, 71 - .dumb_map_offset = vkms_dumb_map, 72 71 .gem_vm_ops = &vkms_gem_vm_ops, 73 72 .gem_free_object_unlocked = vkms_gem_free_object, 74 73 .get_vblank_timestamp = vkms_get_vblank_timestamp,
-3
drivers/gpu/drm/vkms/vkms_drv.h
··· 127 127 int vkms_dumb_create(struct drm_file *file, struct drm_device *dev, 128 128 struct drm_mode_create_dumb *args); 129 129 130 - int vkms_dumb_map(struct drm_file *file, struct drm_device *dev, 131 - u32 handle, u64 *offset); 132 - 133 130 void vkms_gem_free_object(struct drm_gem_object *obj); 134 131 135 132 int vkms_gem_vmap(struct drm_gem_object *obj);
-26
drivers/gpu/drm/vkms/vkms_gem.c
··· 153 153 return 0; 154 154 } 155 155 156 - int vkms_dumb_map(struct drm_file *file, struct drm_device *dev, 157 - u32 handle, u64 *offset) 158 - { 159 - struct drm_gem_object *obj; 160 - int ret; 161 - 162 - obj = drm_gem_object_lookup(file, handle); 163 - if (!obj) 164 - return -ENOENT; 165 - 166 - if (!obj->filp) { 167 - ret = -EINVAL; 168 - goto unref; 169 - } 170 - 171 - ret = drm_gem_create_mmap_offset(obj); 172 - if (ret) 173 - goto unref; 174 - 175 - *offset = drm_vma_node_offset_addr(&obj->vma_node); 176 - unref: 177 - drm_gem_object_put_unlocked(obj); 178 - 179 - return ret; 180 - } 181 - 182 156 static struct page **_get_pages(struct vkms_gem_object *vkms_obj) 183 157 { 184 158 struct drm_gem_object *gem_obj = &vkms_obj->gem;