Mesa (staging/21.0): intel/anv: Fix condition for planar yuv surface
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Thu Feb 18 22:42:29 UTC 2021
Module: Mesa
Branch: staging/21.0
Commit: 811f4b21daf498daecb421fc7e26f531b96d3b02
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=811f4b21daf498daecb421fc7e26f531b96d3b02
Author: Anuj Phogat <anuj.phogat at gmail.com>
Date: Wed Feb 17 14:24:20 2021 -0800
intel/anv: Fix condition for planar yuv surface
Test the sampler->conversion for NULL pointer before dereferencing it.
Fixes: Regressions in VulkanCTS.
Fixes: 226316116cd "intel/anv: Fix condition to set MipModeFilter for YUV surface"
Signed-off-by: Anuj Phogat <anuj.phogat at gmail.com>
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
Reviewed-by: Jason Ekstrand <jason at jlekstrand.net>
(cherry picked from commit 69e94e8939f79041b9cc21f03286b24166a0d746)
---
.pick_status.json | 2 +-
src/intel/vulkan/genX_state.c | 4 ++--
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/.pick_status.json b/.pick_status.json
index bf1fef78a15..6d8430081e2 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -310,7 +310,7 @@
"description": "intel/anv: Fix condition for planar yuv surface",
"nominated": true,
"nomination_type": 1,
- "resolution": 0,
+ "resolution": 1,
"master_sha": null,
"because_sha": "226316116cd1e48a8f0734aa58669f98294d3d19"
},
diff --git a/src/intel/vulkan/genX_state.c b/src/intel/vulkan/genX_state.c
index 0c7905b6bcd..ffcbacd31a9 100644
--- a/src/intel/vulkan/genX_state.c
+++ b/src/intel/vulkan/genX_state.c
@@ -504,12 +504,12 @@ VkResult genX(CreateSampler)(
/* From Broadwell PRM, SAMPLER_STATE:
* "Mip Mode Filter must be set to MIPFILTER_NONE for Planar YUV surfaces."
*/
- const bool isl_format_is_planar_yuv =
+ const bool isl_format_is_planar_yuv = sampler->conversion &&
isl_format_is_yuv(sampler->conversion->format->planes[0].isl_format) &&
isl_format_is_planar(sampler->conversion->format->planes[0].isl_format);
const uint32_t mip_filter_mode =
- (sampler->conversion && isl_format_is_planar_yuv) ?
+ isl_format_is_planar_yuv ?
MIPFILTER_NONE : vk_to_gen_mipmap_mode[pCreateInfo->mipmapMode];
struct GENX(SAMPLER_STATE) sampler_state = {
More information about the mesa-commit
mailing list