mirror of
https://github.com/elwrcl/intel-hard-graphics.git
synced 2026-10-31 02:48:03 +03:00
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 <[email protected]>
This commit is contained in:
1 file changed
+5
-7
@@ -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: {
|
||||
|
||||
Reference in new issue
Block a user