On Wed, Sep 10, 2025 at 7:37 AM Prike Liang <prike.li...@amd.com> wrote: > > From: Alex Deucher <alexander.deuc...@amd.com> > > Add an API to query queue status such as whether the > queue is hung or whether vram is lost. >
We need mesa code before we can land this new interface. Alex > Reviewed-by: Christian König <christian.koe...@amd.com> > Reviewed-by: Sunil Khatri <sunil.kha...@amd.com> > Signed-off-by: Alex Deucher <alexander.deuc...@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 85b3ca14f81e..7292f7bfcd13 100644 > --- a/include/uapi/drm/amdgpu_drm.h > +++ b/include/uapi/drm/amdgpu_drm.h > @@ -334,6 +334,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 */ > @@ -346,6 +347,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. > @@ -427,9 +434,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.34.1 >