This series wires USERQ_EOP, QUEUE_RESET, and GPU_RESET events into the
render-node EVENTFD notification infrastructure.

It builds on the render-node EVENTFD infrastructure introduced in:

  https://patchwork.freedesktop.org/series/164618/#rev7

That series provides the EVENTFD manager, subscription lifetime
management, event type definitions, and queue-aware subscription
support. This series adds only the EVENTFD notification producers for
GPU events.

Base branch:
  origin/amd-unified-interface

Base commit:
  540d68973c0b ("drm/amdgpu/userq: fix NULL deref in amdgpu_userq_evict_all")

EVENTFD provides lightweight notification-only wakeups. Event payload
and metadata are retrieved separately through the corresponding event
interface.

The three patches in this series add:

  - USERQ_EOP notifications from the user queue fence interrupt path.
  - QUEUE_RESET notifications after successfully resetting a hung queue.
  - GPU_RESET notifications after successful hardware reset completion.

Changes since v2:

* Rebased onto the latest EVENTFD infrastructure.

* Reworked QUEUE_RESET handling to use the queue object already resolved
  by the MES queue reset path.

* Introduced amdgpu_userq_handle_hung_queue() to consolidate queue state
  updates, EVENTFD signaling, fence completion, and the DRM wedged event
  into a single helper.

* Keep the queue alive across reset and unmap processing by taking a
  queue reference while it is being handled.

* Preserve the existing guilty queue handling and queue type validation
  in the MES reset path.

The USERQ_EOP and GPU_RESET notification paths are unchanged from v2
apart from rebasing.

Only compilation tested.

Srinivasan Shanmugam (3):
  drm/amdgpu: Signal USERQ_EOP EVENTFD notifications
  drm/amdgpu: Signal QUEUE_RESET EVENTFD notifications
  drm/amdgpu: Signal GPU_RESET EVENTFD notifications

Srinivasan Shanmugam (3):
  drm/amdgpu: Signal USERQ_EOP EVENTFD notifications
  drm/amdgpu: Signal QUEUE_RESET EVENTFD notifications
  drm/amdgpu: Signal GPU_RESET EVENTFD notifications

 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 51 ++++++++++++++-
 drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c  | 39 ++++++++++++
 drivers/gpu/drm/amd/amdgpu/amdgpu_userq.h  |  3 +-
 drivers/gpu/drm/amd/amdgpu/mes_userqueue.c | 73 ++++++++++++++--------
 4 files changed, 138 insertions(+), 28 deletions(-)

-- 
2.34.1

Reply via email to