[PATCH] drm/amdgpu: fix i2s_pdata out of bound array access

Alex Deucher alexdeucher at gmail.com
Wed Jul 27 15:22:59 UTC 2022


On Wed, Jul 27, 2022 at 11:16 AM Mukunda,Vijendar
<vijendar.mukunda at amd.com> wrote:
>
> On 7/27/22 8:25 PM, Alex Deucher wrote:
> > On Wed, Jul 27, 2022 at 10:42 AM Vijendar Mukunda
> > <Vijendar.Mukunda at amd.com> wrote:
> >>
> >> Fixed following Smatch static checker warning:
> >>
> >>     drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c:393 acp_hw_init()
> >>     error: buffer overflow 'i2s_pdata' 3 <= 3
> >>     drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c:396 acp_hw_init()
> >>     error: buffer overflow 'i2s_pdata' 3 <= 3
> >>
> >> Reported-by: Dan Carpenter <dan.carpenter at oracle.com>
> >> Signed-off-by: Vijendar Mukunda <Vijendar.Mukunda at amd.com>
> >> ---
> >>  drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c | 8 --------
> >>  1 file changed, 8 deletions(-)
> >>
> >> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c
> >> index bcc7ee02e0fc..6d72355ac492 100644
> >> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c
> >> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_acp.c
> >> @@ -390,14 +390,6 @@ static int acp_hw_init(void *handle)
> >>                 i2s_pdata[2].i2s_reg_comp1 = ACP_BT_COMP1_REG_OFFSET;
> >>                 i2s_pdata[2].i2s_reg_comp2 = ACP_BT_COMP2_REG_OFFSET;
> >>
> >> -               i2s_pdata[3].quirks = DW_I2S_QUIRK_COMP_REG_OFFSET;
> >> -               switch (adev->asic_type) {
> >> -               case CHIP_STONEY:
> >> -                       i2s_pdata[3].quirks |= DW_I2S_QUIRK_16BIT_IDX_OVERRIDE;
> >> -                       break;
> >> -               default:
> >> -                       break;
> >> -               }
> >
> > Is this actually not used or should we just increase the allocation size?
> >
> > Alex
> it's my bad. i2s_pdata array size is 3. when we recently included code
> changes for JD platform , this piece of code was added mistakenly for
> Stoney platform switch case.

Thanks.  Patch is:
Acked-by: Alex Deucher <alexander.deucher at amd.com>

>
> --
> Vijendar
>
> >
> >>                 adev->acp.acp_res[0].name = "acp2x_dma";
> >>                 adev->acp.acp_res[0].flags = IORESOURCE_MEM;
> >>                 adev->acp.acp_res[0].start = acp_base;
> >> --
> >> 2.25.1
> >>
>


More information about the dri-devel mailing list