[PATCH 4.4 030/115] drm/omap: fix dmabuf mmap for dma_alloced buffers

From: Greg Kroah-Hartman
Date: Mon Dec 18 2017 - 13:09:14 EST

4.4-stable review patch. If anyone has any objections, please let me know.


From: Tomi Valkeinen <tomi.valkeinen@xxxxxx>

[ Upstream commit 9fa1d7537242bd580ffa99c4725a0407096aad26 ]

omap_gem_dmabuf_mmap() returns an error (with a WARN) when called for a
buffer which is allocated with dma_alloc_*(). This prevents dmabuf mmap
from working on SoCs without DMM, e.g. AM4 and OMAP3.

I could not find any reason for omap_gem_dmabuf_mmap() rejecting such
buffers, and just removing the if() fixes the limitation.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@xxxxxx>
Signed-off-by: Sasha Levin <alexander.levin@xxxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c | 3 ---
1 file changed, 3 deletions(-)

--- a/drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c
+++ b/drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c
@@ -142,9 +142,6 @@ static int omap_gem_dmabuf_mmap(struct d
struct drm_gem_object *obj = buffer->priv;
int ret = 0;

- if (WARN_ON(!obj->filp))
- return -EINVAL;
ret = drm_gem_mmap_obj(obj, omap_gem_mmap_size(obj), vma);
if (ret < 0)
return ret;