Patch "drm/amdgpu: fix ttm_bo calltrace warning in psp_hw_fini" has been added to the 6.2-stable tree

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

 



This is a note to let you know that I've just added the patch titled

    drm/amdgpu: fix ttm_bo calltrace warning in psp_hw_fini

to the 6.2-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     drm-amdgpu-fix-ttm_bo-calltrace-warning-in-psp_hw_fi.patch
and it can be found in the queue-6.2 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 7ba634741b2154285afb16ce3d6d4a48ec643a8a
Author: Horatio Zhang <Hongkun.Zhang@xxxxxxx>
Date:   Fri Feb 24 13:55:44 2023 +0800

    drm/amdgpu: fix ttm_bo calltrace warning in psp_hw_fini
    
    [ Upstream commit 23f4a2d29ba57bf88095f817de5809d427fcbe7e ]
    
    The call trace occurs when the amdgpu is removed after
    the mode1 reset. During mode1 reset, from suspend to resume,
    there is no need to reinitialize the ta firmware buffer
    which caused the bo pin_count increase redundantly.
    
    [  489.885525] Call Trace:
    [  489.885525]  <TASK>
    [  489.885526]  amdttm_bo_put+0x34/0x50 [amdttm]
    [  489.885529]  amdgpu_bo_free_kernel+0xe8/0x130 [amdgpu]
    [  489.885620]  psp_free_shared_bufs+0xb7/0x150 [amdgpu]
    [  489.885720]  psp_hw_fini+0xce/0x170 [amdgpu]
    [  489.885815]  amdgpu_device_fini_hw+0x2ff/0x413 [amdgpu]
    [  489.885960]  ? blocking_notifier_chain_unregister+0x56/0xb0
    [  489.885962]  amdgpu_driver_unload_kms+0x51/0x60 [amdgpu]
    [  489.886049]  amdgpu_pci_remove+0x5a/0x140 [amdgpu]
    [  489.886132]  ? __pm_runtime_resume+0x60/0x90
    [  489.886134]  pci_device_remove+0x3e/0xb0
    [  489.886135]  __device_release_driver+0x1ab/0x2a0
    [  489.886137]  driver_detach+0xf3/0x140
    [  489.886138]  bus_remove_driver+0x6c/0xf0
    [  489.886140]  driver_unregister+0x31/0x60
    [  489.886141]  pci_unregister_driver+0x40/0x90
    [  489.886142]  amdgpu_exit+0x15/0x451 [amdgpu]
    
    Signed-off-by: Horatio Zhang <Hongkun.Zhang@xxxxxxx>
    Signed-off-by: longlyao <Longlong.Yao@xxxxxxx>
    Reviewed-by: Guchun Chen <guchun.chen@xxxxxxx>
    Signed-off-by: Alex Deucher <alexander.deucher@xxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
index ba092072308fa..1b4105110f398 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
@@ -1685,7 +1685,7 @@ static int psp_hdcp_initialize(struct psp_context *psp)
 	psp->hdcp_context.context.mem_context.shared_mem_size = PSP_HDCP_SHARED_MEM_SIZE;
 	psp->hdcp_context.context.ta_load_type = GFX_CMD_ID_LOAD_TA;
 
-	if (!psp->hdcp_context.context.initialized) {
+	if (!psp->hdcp_context.context.mem_context.shared_buf) {
 		ret = psp_ta_init_shared_buf(psp, &psp->hdcp_context.context.mem_context);
 		if (ret)
 			return ret;
@@ -1752,7 +1752,7 @@ static int psp_dtm_initialize(struct psp_context *psp)
 	psp->dtm_context.context.mem_context.shared_mem_size = PSP_DTM_SHARED_MEM_SIZE;
 	psp->dtm_context.context.ta_load_type = GFX_CMD_ID_LOAD_TA;
 
-	if (!psp->dtm_context.context.initialized) {
+	if (!psp->dtm_context.context.mem_context.shared_buf) {
 		ret = psp_ta_init_shared_buf(psp, &psp->dtm_context.context.mem_context);
 		if (ret)
 			return ret;
@@ -1820,7 +1820,7 @@ static int psp_rap_initialize(struct psp_context *psp)
 	psp->rap_context.context.mem_context.shared_mem_size = PSP_RAP_SHARED_MEM_SIZE;
 	psp->rap_context.context.ta_load_type = GFX_CMD_ID_LOAD_TA;
 
-	if (!psp->rap_context.context.initialized) {
+	if (!psp->rap_context.context.mem_context.shared_buf) {
 		ret = psp_ta_init_shared_buf(psp, &psp->rap_context.context.mem_context);
 		if (ret)
 			return ret;



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux