[PATCH v2] drm/amdgpu: fix overflowed array index read warning
Alex Deucher
alexdeucher at gmail.com
Thu Apr 25 13:28:06 UTC 2024
On Thu, Apr 25, 2024 at 3:22 AM Tim Huang <tim.huang at amd.com> wrote:
>
> From: Tim Huang <Tim.Huang at amd.com>
>
> Clear warning that cast operation might have overflowed.
>
> v2: keep reverse xmas tree order to declare "int r;" (Christian)
>
> Signed-off-by: Tim Huang <Tim.Huang at amd.com>
> ---
> drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c
> index 06f0a6534a94..8cf60acb2970 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c
> @@ -473,8 +473,8 @@ static ssize_t amdgpu_debugfs_ring_read(struct file *f, char __user *buf,
> size_t size, loff_t *pos)
> {
> struct amdgpu_ring *ring = file_inode(f)->i_private;
> - int r, i;
> uint32_t value, result, early[3];
> + int r;
>
> if (*pos & 3 || size & 3)
> return -EINVAL;
> @@ -485,7 +485,7 @@ static ssize_t amdgpu_debugfs_ring_read(struct file *f, char __user *buf,
> early[0] = amdgpu_ring_get_rptr(ring) & ring->buf_mask;
> early[1] = amdgpu_ring_get_wptr(ring) & ring->buf_mask;
> early[2] = ring->wptr & ring->buf_mask;
> - for (i = *pos / 4; i < 3 && size; i++) {
> + for (loff_t i = *pos / 4; i < 3 && size; i++) {
Some older compilers complain about declarations mixed with code like
this. Not sure how big a deal that would be.
Alex
> r = put_user(early[i], (uint32_t *)buf);
> if (r)
> return r;
> --
> 2.39.2
>
More information about the amd-gfx
mailing list