]> www.infradead.org Git - users/hch/misc.git/commitdiff
drm/amdgpu: Generate BP threshold exceed CPER once threshold exceeded
authorXiang Liu <xiang.liu@amd.com>
Mon, 4 Aug 2025 14:46:30 +0000 (22:46 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Wed, 6 Aug 2025 18:21:01 +0000 (14:21 -0400)
The bad pages threshold exceed CPER should be generated once threshold
exceeded, no matter the bad_page_threshold setted or not.

Signed-off-by: Xiang Liu <xiang.liu@amd.com>
Reviewed-by: Hawking Zhang <Hawking.Zhang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.c
drivers/gpu/drm/amd/pm/amdgpu_dpm.c

index c3c908cc0859526ded1297418df03fc8508dc0cb..e3e6b32e48308901663058539bb3c642cf0cf13b 100644 (file)
@@ -765,6 +765,10 @@ amdgpu_ras_eeprom_update_header(struct amdgpu_ras_eeprom_control *control)
                dev_warn(adev->dev,
                        "Saved bad pages %d reaches threshold value %d\n",
                        control->ras_num_bad_pages, ras->bad_page_cnt_threshold);
+
+               if (adev->cper.enabled && amdgpu_cper_generate_bp_threshold_record(adev))
+                       dev_warn(adev->dev, "fail to generate bad page threshold cper records\n");
+
                if ((amdgpu_bad_page_threshold != -1) &&
                    (amdgpu_bad_page_threshold != -2)) {
                        control->tbl_hdr.header = RAS_TABLE_HDR_BAD;
index 8e19054578f79cbf14d88deac3d983757b81fb9c..6e0d711820ea6d8a3aaf758646ef4cdab215dc1c 100644 (file)
@@ -764,10 +764,6 @@ int amdgpu_dpm_send_rma_reason(struct amdgpu_device *adev)
        ret = smu_send_rma_reason(smu);
        mutex_unlock(&adev->pm.mutex);
 
-       if (adev->cper.enabled)
-               if (amdgpu_cper_generate_bp_threshold_record(adev))
-                       dev_warn(adev->dev, "fail to generate bad page threshold cper records\n");
-
        return ret;
 }