<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Hi Ivo,<br class=""><div><br class=""><blockquote type="cite" class=""><div class="">Am 06.01.2022 um 17:26 schrieb Ivaylo Dimitrov <<a href="mailto:ivo.g.dimitrov.75@gmail.com" class="">ivo.g.dimitrov.75@gmail.com</a>>:</div><br class="Apple-interchange-newline"><div class=""><div class="">Hi,<br class=""><br class="">On 6.01.22 г. 15:43 ч., Tomi Valkeinen wrote:<br class=""><blockquote type="cite" class="">Hi,<br class="">On 05/01/2022 17:36, Ivaylo Dimitrov wrote:<br class=""><blockquote type="cite" class="">Currently omapdrm driver does not initialize dma_buf_export_info resv<br class="">member, which leads to a new dma_resv being allocated and attached to<br class="">the exported dma_buf. This leads to the issue that fences created on<br class="">dma_buf objects imported by other drivers are ignored by omapdrm, as only<br class="">fences in gem object resv are waited on. This leads to various issues like<br class="">displaying incomplete frames.<br class=""><br class="">Fix that by initializing dma_buf resv to the resv of the gem object being<br class="">exported.<br class=""><br class="">Signed-off-by: Ivaylo Dimitrov <<a href="mailto:ivo.g.dimitrov.75@gmail.com" class="">ivo.g.dimitrov.75@gmail.com</a>><br class="">---<br class="">  drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c | 1 +<br class="">  1 file changed, 1 insertion(+)<br class=""><br class="">diff --git a/drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c b/drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c<br class="">index f1f93cabb61e..a111e5c91925 100644<br class="">--- a/drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c<br class="">+++ b/drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c<br class="">@@ -88,6 +88,7 @@ struct dma_buf *omap_gem_prime_export(struct drm_gem_object *obj, int flags)<br class="">      exp_info.size = omap_gem_mmap_size(obj);<br class="">      exp_info.flags = flags;<br class="">      exp_info.priv = obj;<br class="">+    exp_info.resv = obj->resv;<br class="">      return drm_gem_dmabuf_export(obj->dev, &exp_info);<br class="">  }<br class=""></blockquote>Thanks! Pushed to drm-misc-next.<br class=""></blockquote><br class="">Thanks,<br class=""><br class="">I think lts kernels shall get that fix too, but I have no idea how :) .<br class=""></div></div></blockquote><div><br class=""></div><a href="https://01.org/linuxgraphics/gfx-docs/drm/process/stable-kernel-rules.html" class="">https://01.org/linuxgraphics/gfx-docs/drm/process/stable-kernel-rules.html</a></div><div><br class=""></div><div>so I think you can use Option 2 after it got merged by Linus. I am not sure</div><div>if timing is good for 5.17-rc series. Anyways it should arrive in ca. 3 months</div><div>within 5.18-rc.</div><div><br class=""></div><div>Maybe there is a "fast lane" I do not know...</div><div><br class=""></div><div>BR,</div><div>Nikolaus</div><div><br class=""></div><div><br class=""></div></body></html>