umc_v12_0_fill_error_record() returns ret after walking the pages
reported by amdgpu_umc_lookup_bad_pages_in_a_row(). That helper can
return zero entries, leaving the loop skipped and ret uninitialized.

Set ret to 0 immediately before the loop so the zero-page path reports a
deterministic status instead of returning stack data.

Suggested-by: Christian König <[email protected]>
Signed-off-by: Ruoyu Wang <[email protected]>
---
v2:
- Set ret immediately before the loop instead of initializing it in the
  declaration, as suggested by Christian.
- Avoid describing the zero-entry case as an allocation-failure fix.

 drivers/gpu/drm/amd/amdgpu/umc_v12_0.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/gpu/drm/amd/amdgpu/umc_v12_0.c 
b/drivers/gpu/drm/amd/amdgpu/umc_v12_0.c
index 14092150336a5..4842340d9d65f 100644
--- a/drivers/gpu/drm/amd/amdgpu/umc_v12_0.c
+++ b/drivers/gpu/drm/amd/amdgpu/umc_v12_0.c
@@ -690,6 +690,7 @@ static int umc_v12_0_fill_error_record(struct amdgpu_device 
*adev,
        count = amdgpu_umc_lookup_bad_pages_in_a_row(adev,
                                ecc_err->pa_pfn << AMDGPU_GPU_PAGE_SHIFT,
                                page_pfn, ARRAY_SIZE(page_pfn));
+       ret = 0;
 
        for (i = 0; i < count; i++) {
                ret = amdgpu_umc_fill_error_record(err_data,
-- 
2.51.0

Reply via email to