Mesa (master): r600: partly revert disabling tiling for 1d texture.

Dave Airlie airlied at kemper.freedesktop.org
Wed Feb 28 05:00:08 UTC 2018


Module: Mesa
Branch: master
Commit: a5853a33332d51382cae42397f353817e47cccc9
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a5853a33332d51382cae42397f353817e47cccc9

Author: Dave Airlie <airlied at redhat.com>
Date:   Wed Feb 28 04:37:45 2018 +0000

r600: partly revert disabling tiling for 1d texture.

Previously we had a check for 1d of narrow 2D textures, however
narrow 2d textures caused gpu hangs, but it was correct for 1d
textures.

This fixes a bunch of 1D image piglits for me.

Fixes: 7b8e1c089d (r600/texture: drop lowering 1d/2d images to linear.)
Reviewed-by: Roland Scheidegger <sroland at vmware.com>
Signed-off-by: Dave Airlie <airlied at redhat.com>

---

 src/gallium/drivers/r600/r600_texture.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/gallium/drivers/r600/r600_texture.c b/src/gallium/drivers/r600/r600_texture.c
index 03cdcd22ee..1fbb682d67 100644
--- a/src/gallium/drivers/r600/r600_texture.c
+++ b/src/gallium/drivers/r600/r600_texture.c
@@ -1053,6 +1053,11 @@ r600_choose_tiling(struct r600_common_screen *rscreen,
 		if (templ->bind & PIPE_BIND_LINEAR)
 			return RADEON_SURF_MODE_LINEAR_ALIGNED;
 
+		/* 1D textures should be linear - fixes image operations on 1d */
+		if (templ->target == PIPE_TEXTURE_1D ||
+		    templ->target == PIPE_TEXTURE_1D_ARRAY)
+                       return RADEON_SURF_MODE_LINEAR_ALIGNED;
+
 		/* Textures likely to be mapped often. */
 		if (templ->usage == PIPE_USAGE_STAGING ||
 		    templ->usage == PIPE_USAGE_STREAM)




More information about the mesa-commit mailing list