[PATCH][next] drm/amdgpu: fix return of an uninitialized value in variable ret

From: Colin King
Date: Fri May 10 2019 - 06:10:06 EST

From: Colin Ian King <colin.king@xxxxxxxxxxxxx>

In the case where is_enable is false and lo_base_addr is non-zero the
variable ret has not been initialized and is being checked for non-zero
and potentially garbage is being returned. Fix this by not returning
ret but instead returning -EINVAL on the zero lo_base_addr case.

Addresses-Coverity: ("Uninitialized scalar variable")
Fixes: a6ac0b44bab9 ("drm/amdgpu: add df perfmon regs and funcs for xgmi")
Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>
drivers/gpu/drm/amd/amdgpu/df_v3_6.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/df_v3_6.c b/drivers/gpu/drm/amd/amdgpu/df_v3_6.c
index a5c3558869fb..8c09bf994acd 100644
--- a/drivers/gpu/drm/amd/amdgpu/df_v3_6.c
+++ b/drivers/gpu/drm/amd/amdgpu/df_v3_6.c
@@ -398,10 +398,7 @@ static int df_v3_6_start_xgmi_link_cntr(struct amdgpu_device *adev,

if (lo_base_addr == 0)
- ret = -EINVAL;
- if (ret)
- return ret;
+ return -EINVAL;

lo_val = RREG32_PCIE(lo_base_addr);