Patch "drm/amdgpu: Fix usage of UMC fill record in RAS" 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 usage of UMC fill record in RAS

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-usage-of-umc-fill-record-in-ras.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 9ef3f3ac9e0ed206b1c197a4900a29763dadc6c8
Author: Luben Tuikov <luben.tuikov@xxxxxxx>
Date:   Sat Jun 10 06:19:15 2023 -0400

    drm/amdgpu: Fix usage of UMC fill record in RAS
    
    [ Upstream commit 71344a718a9fda8c551cdc4381d354f9a9907f6f ]
    
    The fixed commit listed in the Fixes tag below, introduced a bug in
    amdgpu_ras.c::amdgpu_reserve_page_direct(), in that when introducing the new
    amdgpu_umc_fill_error_record() and internally in that new function the physical
    address (argument "uint64_t retired_page"--wrong name) is right-shifted by
    AMDGPU_GPU_PAGE_SHIFT. Thus, in amdgpu_reserve_page_direct() when we pass
    "address" to that new function, we should NOT right-shift it, since this
    results, erroneously, in the page address to be 0 for first
    2^(2*AMDGPU_GPU_PAGE_SHIFT) memory addresses.
    
    This commit fixes this bug.
    
    Cc: Tao Zhou <tao.zhou1@xxxxxxx>
    Cc: Hawking Zhang <Hawking.Zhang@xxxxxxx>
    Cc: Alex Deucher <Alexander.Deucher@xxxxxxx>
    Fixes: 400013b268cb ("drm/amdgpu: add umc_fill_error_record to make code more simple")
    Signed-off-by: Luben Tuikov <luben.tuikov@xxxxxxx>
    Link: https://lore.kernel.org/r/20230610113536.10621-1-luben.tuikov@xxxxxxx
    Reviewed-by: Hawking Zhang <Hawking.Zhang@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_ras.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
index a4b47e1bd111d..09fc464f5f128 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c
@@ -170,8 +170,7 @@ static int amdgpu_reserve_page_direct(struct amdgpu_device *adev, uint64_t addre
 
 	memset(&err_rec, 0x0, sizeof(struct eeprom_table_record));
 	err_data.err_addr = &err_rec;
-	amdgpu_umc_fill_error_record(&err_data, address,
-			(address >> AMDGPU_GPU_PAGE_SHIFT), 0, 0);
+	amdgpu_umc_fill_error_record(&err_data, address, address, 0, 0);
 
 	if (amdgpu_bad_page_threshold != 0) {
 		amdgpu_ras_add_bad_pages(adev, err_data.err_addr,



[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