diff options
author | Dave Airlie <airlied@redhat.com> | 2015-04-08 10:00:27 +1000 |
---|---|---|
committer | Emil Velikov <emil.l.velikov@gmail.com> | 2015-04-22 16:12:51 +0100 |
commit | f44e518364876dbc210370edd2a8b7b0890e8aab (patch) | |
tree | 1fbabfb80f4b9e9169dc1584dc44da1f410f18f7 | |
parent | b2a6b01082e45fb32c607cfc64cd780185be62e3 (diff) | |
download | mesa-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.c | 2 |
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()"); |