Skip to contentSkip to conversation

Patch "drm/etnaviv: Expose our reservation object when exporting a dmabuf." has been added to the 4.12-stable tree

PATCH [email protected] 1 participant 1 message Jul 25, 2017

Subsystems (3)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

drm/etnaviv: Expose our reservation object when exporting a dmabuf.

to the 4.12-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
drm-etnaviv-expose-our-reservation-object-when-exporting-a-dmabuf.patch
and it can be found in the queue-4.12 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From 8555137e26618490cbeb12c243818539875d12f4 Mon Sep 17 00:00:00 2001

From: Eric Anholt <[email protected]>
Date: Mon, 10 Apr 2017 18:44:13 -0700
Subject: drm/etnaviv: Expose our reservation object when exporting a dmabuf.

From: Eric Anholt <[email protected]>

commit 8555137e26618490cbeb12c243818539875d12f4 upstream.

Without this, polling on the dma-buf (and presumably other devices synchronizing against our rendering) would return immediately, even while the BO was busy.

---
 drivers/gpu/drm/etnaviv/etnaviv_drv.c       |    1 +
 drivers/gpu/drm/etnaviv/etnaviv_drv.h       |    1 +
 drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c |    7 +++++++
 3 files changed, 9 insertions(+)
drivers/gpu/drm/etnaviv/etnaviv_drv.c +1 -0
@@ -495,6 +495,7 @@ static struct drm_driver etnaviv_drm_dri
 	.prime_fd_to_handle = drm_gem_prime_fd_to_handle,
 	.gem_prime_export   = drm_gem_prime_export,
 	.gem_prime_import   = drm_gem_prime_import,
+	.gem_prime_res_obj  = etnaviv_gem_prime_res_obj,
 	.gem_prime_pin      = etnaviv_gem_prime_pin,
 	.gem_prime_unpin    = etnaviv_gem_prime_unpin,
 	.gem_prime_get_sg_table = etnaviv_gem_prime_get_sg_table,
drivers/gpu/drm/etnaviv/etnaviv_drv.h +1 -0
@@ -80,6 +80,7 @@ void *etnaviv_gem_prime_vmap(struct drm_
 void etnaviv_gem_prime_vunmap(struct drm_gem_object *obj, void *vaddr);
 int etnaviv_gem_prime_mmap(struct drm_gem_object *obj,
 			   struct vm_area_struct *vma);
+struct reservation_object *etnaviv_gem_prime_res_obj(struct drm_gem_object *obj);
 struct drm_gem_object *etnaviv_gem_prime_import_sg_table(struct drm_device *dev,
 	struct dma_buf_attachment *attach, struct sg_table *sg);
 int etnaviv_gem_prime_pin(struct drm_gem_object *obj);
drivers/gpu/drm/etnaviv/etnaviv_gem_prime.c +7 -0
@@ -150,3 +150,10 @@ fail:
 
 	return ERR_PTR(ret);
 }
+
+struct reservation_object *etnaviv_gem_prime_res_obj(struct drm_gem_object *obj)
+{
+	struct etnaviv_gem_object *etnaviv_obj = to_etnaviv_bo(obj);
+
+	return etnaviv_obj->resv;
+}

Patches currently in stable-queue which might be from [email protected] are

queue-4.12/drm-etnaviv-expose-our-reservation-object-when-exporting-a-dmabuf.patch