Re: [Openpvrsgx-devgroup] [PATCH] drm: omapdrm: Fix implicit dma_buf fencing

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Ivo,

Am 06.01.2022 um 17:26 schrieb Ivaylo Dimitrov <ivo.g.dimitrov.75@xxxxxxxxx>:

Hi,

On 6.01.22 г. 15:43 ч., Tomi Valkeinen wrote:
Hi,
On 05/01/2022 17:36, Ivaylo Dimitrov wrote:
Currently omapdrm driver does not initialize dma_buf_export_info resv
member, which leads to a new dma_resv being allocated and attached to
the exported dma_buf. This leads to the issue that fences created on
dma_buf objects imported by other drivers are ignored by omapdrm, as only
fences in gem object resv are waited on. This leads to various issues like
displaying incomplete frames.

Fix that by initializing dma_buf resv to the resv of the gem object being
exported.

Signed-off-by: Ivaylo Dimitrov <ivo.g.dimitrov.75@xxxxxxxxx>
---
  drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c | 1 +
  1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c b/drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c
index f1f93cabb61e..a111e5c91925 100644
--- a/drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c
+++ b/drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c
@@ -88,6 +88,7 @@ struct dma_buf *omap_gem_prime_export(struct drm_gem_object *obj, int flags)
      exp_info.size = omap_gem_mmap_size(obj);
      exp_info.flags = flags;
      exp_info.priv = obj;
+    exp_info.resv = obj->resv;
      return drm_gem_dmabuf_export(obj->dev, &exp_info);
  }
Thanks! Pushed to drm-misc-next.

Thanks,

I think lts kernels shall get that fix too, but I have no idea how :) .

https://01.org/linuxgraphics/gfx-docs/drm/process/stable-kernel-rules.html

so I think you can use Option 2 after it got merged by Linus. I am not sure
if timing is good for 5.17-rc series. Anyways it should arrive in ca. 3 months
within 5.18-rc.

Maybe there is a "fast lane" I do not know...

BR,
Nikolaus



[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux