summaryrefslogtreecommitdiffstats
path: root/src/amd/vulkan/radv_image.c
diff options
context:
space:
mode:
authorDave Airlie <[email protected]>2017-06-09 02:11:29 +0100
committerDave Airlie <[email protected]>2017-06-09 20:41:55 +0100
commit51553c0beaeb91b1f2cb3292ac55573309b1d86f (patch)
treebb64577dd1db3680e0a12b89bb8d59a63d355e08 /src/amd/vulkan/radv_image.c
parent71651b3139c501f50e6547c21a1cdb816b0a9dde (diff)
radv: set fmask state to all 0s when no fmask. (v2)
The shader reads the descriptor to decide if it should take the fmask value, however we weren't initing it always, which meant random crap, esp with MSAA depth textures. Fixes random hangs with: dEQP-VK.glsl.builtin_var.fragdepth.* v2: check fmask_state is not NULL Fixes: f4e499ec791 "radv: add initial non-conformant radv vulkan driver" Reviewed-by: Bas Nieuwenhuizen <[email protected]> Signed-off-by: Dave Airlie <[email protected]>
Diffstat (limited to 'src/amd/vulkan/radv_image.c')
-rw-r--r--src/amd/vulkan/radv_image.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/amd/vulkan/radv_image.c b/src/amd/vulkan/radv_image.c
index 9a2f32bec76..91c7e5ff79f 100644
--- a/src/amd/vulkan/radv_image.c
+++ b/src/amd/vulkan/radv_image.c
@@ -499,7 +499,8 @@ si_make_texture_descriptor(struct radv_device *device,
S_008F20_PITCH_GFX6(image->fmask.pitch_in_pixels - 1);
fmask_state[5] |= S_008F24_LAST_ARRAY(last_layer);
}
- }
+ } else if (fmask_state)
+ memset(fmask_state, 0, 8 * 4);
}
static void