amd-gfx.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/2] drm/amdgpu: drop non-necessary call trace dump
@ 2022-07-20  9:06 Evan Quan
  2022-07-20  9:06 ` [PATCH 2/2] drm/amdgpu: move mes self test after drm sched re-started Evan Quan
  2022-07-20 12:50 ` [PATCH 1/2] drm/amdgpu: drop non-necessary call trace dump Christian König
  0 siblings, 2 replies; 3+ messages in thread
From: Evan Quan @ 2022-07-20  9:06 UTC (permalink / raw)
  To: amd-gfx; +Cc: alexander.deucher, Evan Quan, hawking.zhang

This extra call trace dump comes out in every gpu reset.
And it gives people a wrong impression that something
went wrong. Although actually there was not.

Signed-off-by: Evan Quan <evan.quan@amd.com>
Change-Id: I884af405b6b3cd52b9024408a21fd39811a01f4d
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
index b79ee4ffb879..1b1a70a6da18 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
@@ -4667,7 +4667,6 @@ static int amdgpu_reset_reg_dumps(struct amdgpu_device *adev)
 	int i;
 
 	lockdep_assert_held(&adev->reset_domain->sem);
-	dump_stack();
 
 	for (i = 0; i < adev->num_regs; i++) {
 		adev->reset_dump_reg_value[i] = RREG32(adev->reset_dump_reg_list[i]);
-- 
2.29.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [PATCH 2/2] drm/amdgpu: move mes self test after drm sched re-started
  2022-07-20  9:06 [PATCH 1/2] drm/amdgpu: drop non-necessary call trace dump Evan Quan
@ 2022-07-20  9:06 ` Evan Quan
  2022-07-20 12:50 ` [PATCH 1/2] drm/amdgpu: drop non-necessary call trace dump Christian König
  1 sibling, 0 replies; 3+ messages in thread
From: Evan Quan @ 2022-07-20  9:06 UTC (permalink / raw)
  To: amd-gfx; +Cc: alexander.deucher, Jack Xiao, Evan Quan, hawking.zhang

From: Jack Xiao <Jack.Xiao@amd.com>

mes self test rely on vm mapping, move it after
drm sched re-started so that vm mapping can work
during gpu reset.

Signed-off-by: Jack Xiao <Jack.Xiao@amd.com>
Acked-and-tested-by: Evan Quan <evan.quan@amd.com>
Change-Id: Ib202c04d86191ca47da90d27c2a8cf9e7c8e6732
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 3 +++
 drivers/gpu/drm/amd/amdgpu/mes_v10_1.c     | 3 ++-
 drivers/gpu/drm/amd/amdgpu/mes_v11_0.c     | 3 ++-
 3 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
index 1b1a70a6da18..8fa3cf8e3a46 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
@@ -5298,6 +5298,9 @@ int amdgpu_device_gpu_recover(struct amdgpu_device *adev,
 			drm_sched_start(&ring->sched, !tmp_adev->asic_reset_res);
 		}
 
+		if (adev->enable_mes)
+			amdgpu_mes_self_test(tmp_adev);
+
 		if (!drm_drv_uses_atomic_modeset(adev_to_drm(tmp_adev)) && !job_signaled) {
 			drm_helper_resume_force_mode(adev_to_drm(tmp_adev));
 		}
diff --git a/drivers/gpu/drm/amd/amdgpu/mes_v10_1.c b/drivers/gpu/drm/amd/amdgpu/mes_v10_1.c
index 0082e2e1e0b4..067d10073a56 100644
--- a/drivers/gpu/drm/amd/amdgpu/mes_v10_1.c
+++ b/drivers/gpu/drm/amd/amdgpu/mes_v10_1.c
@@ -1233,7 +1233,8 @@ static int mes_v10_0_late_init(void *handle)
 {
 	struct amdgpu_device *adev = (struct amdgpu_device *)handle;
 
-	amdgpu_mes_self_test(adev);
+	if (!amdgpu_in_reset(adev))
+		amdgpu_mes_self_test(adev);
 
 	return 0;
 }
diff --git a/drivers/gpu/drm/amd/amdgpu/mes_v11_0.c b/drivers/gpu/drm/amd/amdgpu/mes_v11_0.c
index 777f9268d92d..120ea294abef 100644
--- a/drivers/gpu/drm/amd/amdgpu/mes_v11_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/mes_v11_0.c
@@ -1280,7 +1280,8 @@ static int mes_v11_0_late_init(void *handle)
 {
 	struct amdgpu_device *adev = (struct amdgpu_device *)handle;
 
-	amdgpu_mes_self_test(adev);
+	if (!amdgpu_in_reset(adev))
+		amdgpu_mes_self_test(adev);
 
 	return 0;
 }
-- 
2.29.0


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH 1/2] drm/amdgpu: drop non-necessary call trace dump
  2022-07-20  9:06 [PATCH 1/2] drm/amdgpu: drop non-necessary call trace dump Evan Quan
  2022-07-20  9:06 ` [PATCH 2/2] drm/amdgpu: move mes self test after drm sched re-started Evan Quan
@ 2022-07-20 12:50 ` Christian König
  1 sibling, 0 replies; 3+ messages in thread
From: Christian König @ 2022-07-20 12:50 UTC (permalink / raw)
  To: Evan Quan, amd-gfx; +Cc: alexander.deucher, hawking.zhang

Am 20.07.22 um 11:06 schrieb Evan Quan:
> This extra call trace dump comes out in every gpu reset.
> And it gives people a wrong impression that something
> went wrong. Although actually there was not.
>
> Signed-off-by: Evan Quan <evan.quan@amd.com>
> Change-Id: I884af405b6b3cd52b9024408a21fd39811a01f4d

Acked-by: Christian König <christian.koenig@amd.com>

And please guys don't add calls to dump_stack() in the future. That's 
really not supposed to be here.

Thanks,
Christian.

> ---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 1 -
>   1 file changed, 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> index b79ee4ffb879..1b1a70a6da18 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> @@ -4667,7 +4667,6 @@ static int amdgpu_reset_reg_dumps(struct amdgpu_device *adev)
>   	int i;
>   
>   	lockdep_assert_held(&adev->reset_domain->sem);
> -	dump_stack();
>   
>   	for (i = 0; i < adev->num_regs; i++) {
>   		adev->reset_dump_reg_value[i] = RREG32(adev->reset_dump_reg_list[i]);


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2022-07-20 12:50 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-07-20  9:06 [PATCH 1/2] drm/amdgpu: drop non-necessary call trace dump Evan Quan
2022-07-20  9:06 ` [PATCH 2/2] drm/amdgpu: move mes self test after drm sched re-started Evan Quan
2022-07-20 12:50 ` [PATCH 1/2] drm/amdgpu: drop non-necessary call trace dump Christian König

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).