summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarek Olšák <marek.olsak@amd.com>2016-10-24 21:16:11 +0200
committerEmil Velikov <emil.l.velikov@gmail.com>2016-11-08 16:23:22 +0000
commit20008a9fb82a573f15e9c6b02b68a90f31889efb (patch)
treeb918458eba1651504ef1106eacbb442388909951
parent79a1cc2364b7894617a8c70f0810d6879876f1e1 (diff)
downloadexternal_mesa3d-20008a9fb82a573f15e9c6b02b68a90f31889efb.zip
external_mesa3d-20008a9fb82a573f15e9c6b02b68a90f31889efb.tar.gz
external_mesa3d-20008a9fb82a573f15e9c6b02b68a90f31889efb.tar.bz2
gallium/radeon: make sure the address of separate CMASK is aligned properly
This should fix random GPU hangs on Hawaii and Fiji. Cc: 11.2 12.0 13.0 <mesa-stable@lists.freedesktop.org> Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com> (cherry picked from commit dce05b342355eac9296ee7110385b16d6edb059d)
-rw-r--r--src/gallium/drivers/radeon/r600_texture.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/gallium/drivers/radeon/r600_texture.c b/src/gallium/drivers/radeon/r600_texture.c
index 23ddff4..8de3b18 100644
--- a/src/gallium/drivers/radeon/r600_texture.c
+++ b/src/gallium/drivers/radeon/r600_texture.c
@@ -703,8 +703,9 @@ static void r600_texture_alloc_cmask_separate(struct r600_common_screen *rscreen
}
rtex->cmask_buffer = (struct r600_resource *)
- pipe_buffer_create(&rscreen->b, PIPE_BIND_CUSTOM,
- PIPE_USAGE_DEFAULT, rtex->cmask.size);
+ r600_aligned_buffer_create(&rscreen->b, 0, PIPE_USAGE_DEFAULT,
+ rtex->cmask.size,
+ rtex->cmask.alignment);
if (rtex->cmask_buffer == NULL) {
rtex->cmask.size = 0;
return;