On 09/02/18 11:53, Marek Olšák wrote:
On Fri, Feb 9, 2018 at 1:45 AM, Timothy Arceri <tarc...@itsqueeze.com> wrote:
On 09/02/18 10:49, Marek Olšák wrote:

Does this fix the cache/no cache conflict?

diff --git a/src/gallium/drivers/radeonsi/si_pipe.c
b/src/gallium/drivers/radeonsi/si_pipe.c
index 26835d6..97f11ea 100644
--- a/src/gallium/drivers/radeonsi/si_pipe.c
+++ b/src/gallium/drivers/radeonsi/si_pipe.c
@@ -642,7 +642,8 @@ static void si_disk_cache_create(struct si_screen
*sscreen)
                                  sscreen->debug_flags &
                                  (DBG(FS_CORRECT_DERIVS_AFTER_KILL) |
                                   DBG(SI_SCHED) |
-                                DBG(UNSAFE_MATH));
+                                DBG(UNSAFE_MATH) |
+                                DBG(NIR));

                          sscreen->disk_shader_cache =

disk_cache_create(si_get_family_name(sscreen),


Marek


That should do it thanks. Feel free to add my r-b and push.

Well, I'm not sure. Would you explain to me why this fixes the hangs?
If it's a conflict between TGSI and NIR caching in st/mesa, the driver
shouldn't contain workarounds for it. Even when NIR is enabled, TGSI
shaders can still come from non-GLSL sources.

I don't think this fixes any hangs just crashes e.g. when you run a shader on the tgsi backend then try to run the same shader on the nir backend. In this case the nir cache will try to load the tgsi cache from disk as it produces the same key without this flag.


Thanks,
Marek

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to