summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2015-04-08 10:00:27 +1000
committerEmil Velikov <emil.l.velikov@gmail.com>2015-04-22 16:12:51 +0100
commitf44e518364876dbc210370edd2a8b7b0890e8aab (patch)
tree1fbabfb80f4b9e9169dc1584dc44da1f410f18f7
parentb2a6b01082e45fb32c607cfc64cd780185be62e3 (diff)
downloadmesa-f44e518364876dbc210370edd2a8b7b0890e8aab.tar.gz
st/mesa: align cube map arrays layers
We create textures internally for texsubimage, and we use the values from sub image to create a new texture, however we don't align these to valid sizes, and cube map arrays must have an array size aligned to 6. This fixes texsubimage cube_map_array on CAYMAN at least, (it was causing GPU hang and bad values), it probably also fixes it on radeonsi and evergreen. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89957 Tested-by: Tom Stellard <thomas.stellard@amd.com> Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Marek Olšák <marek.olsak@amd.com> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit cc5860e40787b3afe36856674f028e830685271b)
-rw-r--r--src/mesa/state_tracker/st_texture.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/mesa/state_tracker/st_texture.c b/src/mesa/state_tracker/st_texture.c
index ada9841897f..9dabca8ca1c 100644
--- a/src/mesa/state_tracker/st_texture.c
+++ b/src/mesa/state_tracker/st_texture.c
@@ -177,7 +177,7 @@ st_gl_texture_dims_to_pipe_dims(GLenum texture,
*widthOut = widthIn;
*heightOut = heightIn;
*depthOut = 1;
- *layersOut = depthIn;
+ *layersOut = util_align_npot(depthIn, 6);
break;
default:
assert(0 && "Unexpected texture in st_gl_texture_dims_to_pipe_dims()");