[PATCH v1 1/2] drm/amdgpu: fix out of bounds access in gfx10 during ip dump

Christian König christian.koenig at amd.com
Tue Jul 2 08:52:38 UTC 2024


Am 02.07.24 um 10:26 schrieb Sunil Khatri:
> During ip dump in gfx10 the index variable is reused but is
> not reinitialized to 0 and this causes the index calculation
> to be wrong and access out of bound access.

Acked-by: Christian König <christian.koenig at amd.com> for the series.

Regards,
Christian.

>
> Signed-off-by: Sunil Khatri <sunil.khatri at amd.com>
> ---
>   drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c | 2 ++
>   1 file changed, 2 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c
> index 18488c02d1cf..a52c72739b40 100644
> --- a/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v10_0.c
> @@ -9287,6 +9287,7 @@ static void gfx_v10_ip_print(void *handle, struct drm_printer *p)
>   	if (!adev->gfx.ip_dump_gfx_queues)
>   		return;
>   
> +	index = 0;
>   	reg_count = ARRAY_SIZE(gc_gfx_queue_reg_list_10);
>   	drm_printf(p, "\nnum_me: %d num_pipe: %d num_queue: %d\n",
>   		   adev->gfx.me.num_me,
> @@ -9352,6 +9353,7 @@ static void gfx_v10_ip_dump(void *handle)
>   	if (!adev->gfx.ip_dump_gfx_queues)
>   		return;
>   
> +	index = 0;
>   	reg_count = ARRAY_SIZE(gc_gfx_queue_reg_list_10);
>   	amdgpu_gfx_off_ctrl(adev, false);
>   	mutex_lock(&adev->srbm_mutex);



More information about the amd-gfx mailing list