About Social Code
aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLionel Landwerlin <lionel.g.landwerlin@intel.com>2025-08-04 11:34:29 +0300
committerMarge Bot <marge-bot@fdo.invalid>2025-11-06 15:27:29 +0000
commit21aafaea165734547753165f6b718f888b0f72ea (patch)
treefa2e79db1ca09f56dd2b8d0dcfbb26ca7f254883
parentcb7df84430e6b588b469801c3ad9b30931c9f5b6 (diff)
anv: enable KHR_pipeline_binary support
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/12802 Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/36647>
-rw-r--r--src/intel/ci/anv-adl-fails.txt15
-rw-r--r--src/intel/ci/anv-jsl-fails.txt15
-rw-r--r--src/intel/ci/anv-tgl-fails.txt14
-rw-r--r--src/intel/vulkan/anv_physical_device.c14
4 files changed, 58 insertions, 0 deletions
diff --git a/src/intel/ci/anv-adl-fails.txt b/src/intel/ci/anv-adl-fails.txt
index 79b4d82a4c4..98b3ce1ed9c 100644
--- a/src/intel/ci/anv-adl-fails.txt
+++ b/src/intel/ci/anv-adl-fails.txt
@@ -4,3 +4,18 @@ dEQP-VK.sparse_resources.buffer.ssbo.sparse_residency.buffer_size_2_24,Crash
# This is a bug of CTS: https://gitlab.khronos.org/Tracker/vk-gl-cts/issues/6033
dEQP-VK.video.capabilities.av1_decode_dst_video_format_support_query,Fail
dEQP-VK.video.capabilities.av1_decode_dpb_video_format_support_query,Fail
+
+# https://gitlab.khronos.org/Tracker/vk-gl-cts/-/issues/5926
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.graphics_tests.vertex_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.graphics_tests.vertex_stage_geometry_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.graphics_tests.vertex_stage_tessellation_control_stage_tessellation_evaluation_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.pipeline_from_get_data.vertex_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.pipeline_from_get_data.vertex_stage_geometry_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.pipeline_from_get_data.vertex_stage_tessellation_control_stage_tessellation_evaluation_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_fragment_stage_zero_out_feedback_cout,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_geometry_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_tessellation_control_stage_tessellation_evaluation_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_fragment_stage_delayed_destroy,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_geometry_stage_fragment_stage_delayed_destroy,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_tessellation_control_stage_tessellation_evaluation_stage_fragment_stage_delayed_destroy,Crash
diff --git a/src/intel/ci/anv-jsl-fails.txt b/src/intel/ci/anv-jsl-fails.txt
index cf247e0e472..9eac6e67f36 100644
--- a/src/intel/ci/anv-jsl-fails.txt
+++ b/src/intel/ci/anv-jsl-fails.txt
@@ -1,3 +1,18 @@
# This is a bug of CTS: https://gitlab.khronos.org/Tracker/vk-gl-cts/issues/6033
dEQP-VK.video.capabilities.av1_decode_dst_video_format_support_query,Fail
dEQP-VK.video.capabilities.av1_decode_dpb_video_format_support_query,Fail
+
+# https://gitlab.khronos.org/Tracker/vk-gl-cts/-/issues/5926
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.graphics_tests.vertex_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.graphics_tests.vertex_stage_geometry_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.graphics_tests.vertex_stage_tessellation_control_stage_tessellation_evaluation_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.pipeline_from_get_data.vertex_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.pipeline_from_get_data.vertex_stage_geometry_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.pipeline_from_get_data.vertex_stage_tessellation_control_stage_tessellation_evaluation_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_fragment_stage_zero_out_feedback_cout,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_geometry_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_tessellation_control_stage_tessellation_evaluation_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_fragment_stage_delayed_destroy,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_geometry_stage_fragment_stage_delayed_destroy,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_tessellation_control_stage_tessellation_evaluation_stage_fragment_stage_delayed_destroy,Crash
diff --git a/src/intel/ci/anv-tgl-fails.txt b/src/intel/ci/anv-tgl-fails.txt
index 88993d1628c..9eac6e67f36 100644
--- a/src/intel/ci/anv-tgl-fails.txt
+++ b/src/intel/ci/anv-tgl-fails.txt
@@ -2,3 +2,17 @@
dEQP-VK.video.capabilities.av1_decode_dst_video_format_support_query,Fail
dEQP-VK.video.capabilities.av1_decode_dpb_video_format_support_query,Fail
+# https://gitlab.khronos.org/Tracker/vk-gl-cts/-/issues/5926
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.graphics_tests.vertex_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.graphics_tests.vertex_stage_geometry_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.graphics_tests.vertex_stage_tessellation_control_stage_tessellation_evaluation_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.pipeline_from_get_data.vertex_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.pipeline_from_get_data.vertex_stage_geometry_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.pipeline_from_get_data.vertex_stage_tessellation_control_stage_tessellation_evaluation_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_fragment_stage_zero_out_feedback_cout,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_geometry_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_tessellation_control_stage_tessellation_evaluation_stage_fragment_stage,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_fragment_stage_delayed_destroy,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_geometry_stage_fragment_stage_delayed_destroy,Crash
+dEQP-VK.pipeline.pipeline_library.pipeline_binary.creation_feedback.graphics_tests.vertex_stage_tessellation_control_stage_tessellation_evaluation_stage_fragment_stage_delayed_destroy,Crash
diff --git a/src/intel/vulkan/anv_physical_device.c b/src/intel/vulkan/anv_physical_device.c
index 248b1942c9c..0d5116ec5ee 100644
--- a/src/intel/vulkan/anv_physical_device.c
+++ b/src/intel/vulkan/anv_physical_device.c
@@ -207,6 +207,7 @@ get_device_extensions(const struct anv_physical_device *device,
(intel_perf_has_hold_preemption(device->perf) ||
INTEL_DEBUG(DEBUG_NO_OACONFIG)) &&
!(device->instance->debug & ANV_DEBUG_NO_SECONDARY_CALL),
+ .KHR_pipeline_binary = true,
.KHR_pipeline_executable_properties = true,
.KHR_pipeline_library = true,
#ifdef ANV_USE_WSI_PLATFORM
@@ -996,6 +997,9 @@ get_features(const struct anv_physical_device *pdevice,
/* VK_KHR_maintenance10 */
.maintenance10 = true,
+
+ /* VK_KHR_pipeline_binary */
+ .pipelineBinaries = true,
};
/* The new DOOM and Wolfenstein games require depthBounds without
@@ -1563,6 +1567,16 @@ get_properties(const struct anv_physical_device *pdevice,
props->allowCommandBufferQueryCopies = false;
}
+ /* VK_KHR_pipeline_binary */
+ {
+ const bool has_disk_cache = pdevice->vk.disk_cache != NULL;
+ props->pipelineBinaryInternalCache = has_disk_cache;
+ props->pipelineBinaryInternalCacheControl = has_disk_cache;
+ props->pipelineBinaryPrefersInternalCache = has_disk_cache;
+ props->pipelineBinaryPrecompiledInternalCache = has_disk_cache;
+ props->pipelineBinaryCompressedData = false;
+ }
+
/* VK_KHR_push_descriptor */
{
props->maxPushDescriptors = MAX_PUSH_DESCRIPTORS;