Patch "drm/amdgpu: fix ttm_bo calltrace warning in psp_hw_fini" has been added to the 6.1-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.1-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.1 subdirectory.

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



commit 30d6179ce4f942dd9b89912649b78579647cf97e
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 087147f09933a..3b8825a3e2336 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_psp.c
@@ -1695,7 +1695,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;
@@ -1762,7 +1762,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;
@@ -1830,7 +1830,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