On Fri, Apr 11, 2025 at 4:23 AM jesse.zh...@amd.com <jesse.zh...@amd.com> wrote:
>
> Fix an array index out of bounds warning in the DMA IP case of
> amdgpu_hw_ip_info() where it was incorrectly checking
> adev->gfx.gfx_ring[i].no_user_submission instead of
> adev->sdma.instance[i].ring.no_user_submission.
>
> The mismatch caused UBSAN to report an array bounds violation since
> it was accessing the GFX ring array with SDMA instance indices.
>
> Fix the commit: a245daf3d7a143fb2df(drm/amdgpu: cleanup HW_IP query).

Fixes: 4310acd4464b ("drm/amdgpu: add ring flag for no user submissions")

Reviewed-by: Alex Deucher <alexander.deuc...@amd.com>

>
> Signed-off-by: Jesse Zhang <jesse.zh...@amd.com>
> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c 
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
> index 0ba3ef1e4a06..6a42dea775b1 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c
> @@ -427,7 +427,7 @@ static int amdgpu_hw_ip_info(struct amdgpu_device *adev,
>                 type = AMD_IP_BLOCK_TYPE_SDMA;
>                 for (i = 0; i < adev->sdma.num_instances; i++)
>                         if (adev->sdma.instance[i].ring.sched.ready &&
> -                           !adev->gfx.gfx_ring[i].no_user_submission)
> +                           !adev->sdma.instance[i].ring.no_user_submission)
>                                 ++num_rings;
>                 ib_start_alignment = 256;
>                 ib_size_alignment = 4;
> --
> 2.25.1
>

Reply via email to