[PATCH 8/9] drm/amdgpu: add UAPI for user queue query status
Alex Deucher
alexander.deucher at amd.com
Fri Apr 25 18:38:54 UTC 2025
Add an API to query queue status such as whether the
queue is hung or whether vram is lost.
Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
---
include/uapi/drm/amdgpu_drm.h | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/include/uapi/drm/amdgpu_drm.h b/include/uapi/drm/amdgpu_drm.h
index 1fd96474e64c0..56f052a10ff38 100644
--- a/include/uapi/drm/amdgpu_drm.h
+++ b/include/uapi/drm/amdgpu_drm.h
@@ -328,6 +328,7 @@ union drm_amdgpu_ctx {
/* user queue IOCTL operations */
#define AMDGPU_USERQ_OP_CREATE 1
#define AMDGPU_USERQ_OP_FREE 2
+#define AMDGPU_USERQ_OP_QUERY_STATUS 3
/* queue priority levels */
/* low < normal low < normal high < high */
@@ -340,6 +341,12 @@ union drm_amdgpu_ctx {
/* for queues that need access to protected content */
#define AMDGPU_USERQ_CREATE_FLAGS_QUEUE_SECURE (1 << 2)
+
+/* the queue is hung */
+#define AMDGPU_USERQ_QUERY_STATUS_FLAGS_HUNG (1 << 0)
+/* indicate vram lost since queue was created */
+#define AMDGPU_USERQ_QUERY_STATUS_FLAGS_VRAMLOST (1 << 1)
+
/*
* This structure is a container to pass input configuration
* info for all supported userqueue related operations.
@@ -421,9 +428,16 @@ struct drm_amdgpu_userq_out {
__u32 _pad;
};
+/* The structure to carry output of userqueue ops */
+struct drm_amdgpu_userq_out_query_state {
+ __u32 flags;
+ __u32 _pad;
+};
+
union drm_amdgpu_userq {
struct drm_amdgpu_userq_in in;
struct drm_amdgpu_userq_out out;
+ struct drm_amdgpu_userq_out_query_state out_qs;
};
/* GFX V11 IP specific MQD parameters */
--
2.49.0
More information about the amd-gfx
mailing list