diff options
| author | Hawking Zhang <Hawking.Zhang@amd.com> | 2021-04-25 14:34:25 +0800 | 
|---|---|---|
| committer | Alex Deucher <alexander.deucher@amd.com> | 2021-04-28 23:35:50 -0400 | 
| commit | a30f128602001c986bb2b3ede074b6193d43905f (patch) | |
| tree | fd43f94086dd24d928221b367c7c98fdf6254f99 /drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | |
| parent | dfdd4b8a95197d3769563e6f504357d98dd63887 (diff) | |
drm/amdgpu: provide socket/die id info in RAS message
Add socket/die information in RAS messages for platforms
that support query those information
Signed-off-by: Hawking Zhang <Hawking.Zhang@amd.com>
Reviewed-by: John Clements <John.Clements@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 29 | 
1 files changed, 27 insertions, 2 deletions
| diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c index f62873fbf249..ae9fb2025259 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c @@ -901,17 +901,42 @@ int amdgpu_ras_query_error_status(struct amdgpu_device *adev,  	info->ce_count = obj->err_data.ce_count;  	if (err_data.ce_count) { -		dev_info(adev->dev, "%ld correctable hardware errors " +		if (adev->smuio.funcs && +		    adev->smuio.funcs->get_socket_id && +		    adev->smuio.funcs->get_die_id) { +			dev_info(adev->dev, "socket: %d, die: %d " +					"%ld correctable hardware errors "  					"detected in %s block, no user "  					"action is needed.\n", +					adev->smuio.funcs->get_socket_id(adev), +					adev->smuio.funcs->get_die_id(adev),  					obj->err_data.ce_count,  					ras_block_str(info->head.block)); +		} else { +			dev_info(adev->dev, "%ld correctable hardware errors " +					"detected in %s block, no user " +					"action is needed.\n", +					obj->err_data.ce_count, +					ras_block_str(info->head.block)); +		}  	}  	if (err_data.ue_count) { -		dev_info(adev->dev, "%ld uncorrectable hardware errors " +		if (adev->smuio.funcs && +		    adev->smuio.funcs->get_socket_id && +		    adev->smuio.funcs->get_die_id) { +			dev_info(adev->dev, "socket: %d, die: %d " +					"%ld uncorrectable hardware errors "  					"detected in %s block\n", +					adev->smuio.funcs->get_socket_id(adev), +					adev->smuio.funcs->get_die_id(adev),  					obj->err_data.ue_count,  					ras_block_str(info->head.block)); +		} else { +			dev_info(adev->dev, "%ld uncorrectable hardware errors " +					"detected in %s block\n", +					obj->err_data.ue_count, +					ras_block_str(info->head.block)); +		}  	}  	return 0; | 
