From 113661753e7916a8b7bd9dc40c72a684e3826f61 Mon Sep 17 00:00:00 2001 From: elwrcl Date: Fri, 21 Aug 2026 07:13:27 +0300 Subject: [PATCH] hasvk: Report result status query support on the video queues. The queue family properties claimed no support with the note that the VCS "seemingly cannot do a posted memory write". It can: the encode feedback query already writes its availability, buffer offset and byte count from a video queue through exactly the same MI_FLUSH_DW post-sync write, and the VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR paths in genX_query.c are complete. Only the advertised capability was missing. dEQP-VK.video.encode.h264.query_with_status_* goes from NotSupported, where it failed device creation, to 4/4 Pass; the family is now 40 of 120 with no failures. h264 decode is unaffected. Co-Authored-By: Claude Opus 5 --- src/intel/vulkan_hasvk/anv_device.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/src/intel/vulkan_hasvk/anv_device.c b/src/intel/vulkan_hasvk/anv_device.c index c242132..bb13b60 100644 --- a/src/intel/vulkan_hasvk/anv_device.c +++ b/src/intel/vulkan_hasvk/anv_device.c @@ -2248,13 +2248,11 @@ void anv_GetPhysicalDeviceQueueFamilyProperties2( case VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_KHR: { VkQueueFamilyQueryResultStatusPropertiesKHR *prop = (VkQueueFamilyQueryResultStatusPropertiesKHR *)ext; - /* Result status queries require the queue's command streamer - * to write the query result to memory. The VCS seemingly - * cannot do a posted memory write. */ - prop->queryResultStatusSupport = - (queue_family->queueFlags & (VK_QUEUE_VIDEO_DECODE_BIT_KHR | - VK_QUEUE_VIDEO_ENCODE_BIT_KHR)) ? - VK_FALSE : VK_TRUE; + /* Result status queries need the queue's command streamer to + * write the result to memory, which every queue here can do: + * the video ones already write their encode feedback with the + * same MI_FLUSH_DW post-sync write. */ + prop->queryResultStatusSupport = VK_TRUE; break; } case VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR: {