Re: [PATCH] drm/amdgpu: extend halt_if_hws_hang to MES

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am 2022-10-25 um 09:42 schrieb Graham Sider:
Hang on MES timeout if halt_if_hws_hang is set to 1.

Signed-off-by: Graham Sider <Graham.Sider@xxxxxxx>
---
  drivers/gpu/drm/amd/amdgpu/amdgpu.h    | 2 ++
  drivers/gpu/drm/amd/amdgpu/mes_v11_0.c | 4 ++++
  2 files changed, 6 insertions(+)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu.h b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
index 0e6ddf05c23c..9999c18e7d8e 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu.h
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu.h
@@ -219,10 +219,12 @@ extern int amdgpu_use_xgmi_p2p;
  extern int sched_policy;
  extern bool debug_evictions;
  extern bool no_system_mem_limit;
+extern int halt_if_hws_hang;
  #else
  static const int __maybe_unused sched_policy = KFD_SCHED_POLICY_HWS;
  static const bool __maybe_unused debug_evictions; /* = false */
  static const bool __maybe_unused no_system_mem_limit;
+static const int __maybe_unused halt_if_hws_hang;
  #endif
  #ifdef CONFIG_HSA_AMD_P2P
  extern bool pcie_p2p;
diff --git a/drivers/gpu/drm/amd/amdgpu/mes_v11_0.c b/drivers/gpu/drm/amd/amdgpu/mes_v11_0.c
index e14f314902b1..d09f92d38ad1 100644
--- a/drivers/gpu/drm/amd/amdgpu/mes_v11_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/mes_v11_0.c
@@ -129,6 +129,10 @@ static int mes_v11_0_submit_pkt_and_poll_completion(struct amdgpu_mes *mes,
  	if (r < 1) {
  		DRM_ERROR("MES failed to response msg=%d\n",
  			  x_pkt->header.opcode);
+
+		while (halt_if_hws_hang)
+			schedule();
+

I think we should add the same in mes_v10_1.c to keep it consistent.

Regards,
  Felix


  		return -ETIMEDOUT;
  	}



[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux