It should first check block ras obj whether be set, it should return 0 directly if block ras obj or hw_ops is not set. Changed from V1: return 0 directly if block ras obj or hw ops is not set Signed-off-by: Stanley.Yang <Stanley.Yang@xxxxxxx> --- drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c index 4a6df4e24243..25514af6cf8f 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ras.c @@ -1105,15 +1105,15 @@ int amdgpu_ras_reset_error_status(struct amdgpu_device *adev, { struct amdgpu_ras_block_object *block_obj = amdgpu_ras_get_ras_block(adev, block, 0); - if (!amdgpu_ras_is_supported(adev, block)) - return -EINVAL; - - if (!block_obj || !block_obj->hw_ops) { + if (!block_obj || !block_obj->hw_ops) { dev_dbg_once(adev->dev, "%s doesn't config RAS function\n", ras_block_str(block)); - return -EINVAL; + return 0; } + if (!amdgpu_ras_is_supported(adev, block)) + return -EINVAL; + if (block_obj->hw_ops->reset_ras_error_count) block_obj->hw_ops->reset_ras_error_count(adev); -- 2.25.1