On Tue, Aug 18, 2026 at 10:21 AM David Laight
<[email protected]> wrote:
>
> On Tue, 18 Aug 2026 09:01:43 -0400
> Alex Deucher <[email protected]> wrote:
>
> > Applied.  Thanks!
> >
> > On Tue, Aug 18, 2026 at 7:10 AM Amin Gattout <[email protected]> wrote:
> > >
> > > strcpy() has been deprecated because it performs no bounds checking
> > > on the destination buffer, which can lead to buffer overflows. Replace
> > > it with the safer strscpy().  No functional changes.
> > >
> > > Signed-off-by: Amin Gattout <[email protected]>
> > > ---
> > >  drivers/gpu/drm/amd/amdgpu/amdgpu_mca.c | 6 +++---
> > >  1 file changed, 3 insertions(+), 3 deletions(-)
> > >
> > > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_mca.c 
> > > b/drivers/gpu/drm/amd/amdgpu/amdgpu_mca.c
> > > index cc6d1a4e4c3a..1caa393c44d5 100644
> > > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_mca.c
> > > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_mca.c
> > > @@ -97,7 +97,7 @@ int amdgpu_mca_mp0_ras_sw_init(struct amdgpu_device 
> > > *adev)
> > >                 return err;
> > >         }
> > >
> > > -       strcpy(ras->ras_block.ras_comm.name, "mca.mp0");
> > > +       strscpy(ras->ras_block.ras_comm.name, "mca.mp0");
>
> I missed this being proposed.
> Both strcpy() and strscpy() get converted to the same memcpy()
> (which might itself get converted to writing a 64bit constant).
>
> But if the string were too long strcpy() would generate a compile error
> whereas strscpy() just trunctates the string.
>
> Which one is better?

I don't know.  I can go either way on this.

Alex


>
>         David
>
> > >         ras->ras_block.ras_comm.block = AMDGPU_RAS_BLOCK__MCA;
> > >         ras->ras_block.ras_comm.sub_block_index = 
> > > AMDGPU_RAS_MCA_BLOCK__MP0;
> > >         ras->ras_block.ras_comm.type = 
> > > AMDGPU_RAS_ERROR__MULTI_UNCORRECTABLE;
> > > @@ -122,7 +122,7 @@ int amdgpu_mca_mp1_ras_sw_init(struct amdgpu_device 
> > > *adev)
> > >                 return err;
> > >         }
> > >
> > > -       strcpy(ras->ras_block.ras_comm.name, "mca.mp1");
> > > +       strscpy(ras->ras_block.ras_comm.name, "mca.mp1");
> > >         ras->ras_block.ras_comm.block = AMDGPU_RAS_BLOCK__MCA;
> > >         ras->ras_block.ras_comm.sub_block_index = 
> > > AMDGPU_RAS_MCA_BLOCK__MP1;
> > >         ras->ras_block.ras_comm.type = 
> > > AMDGPU_RAS_ERROR__MULTI_UNCORRECTABLE;
> > > @@ -147,7 +147,7 @@ int amdgpu_mca_mpio_ras_sw_init(struct amdgpu_device 
> > > *adev)
> > >                 return err;
> > >         }
> > >
> > > -       strcpy(ras->ras_block.ras_comm.name, "mca.mpio");
> > > +       strscpy(ras->ras_block.ras_comm.name, "mca.mpio");
> > >         ras->ras_block.ras_comm.block = AMDGPU_RAS_BLOCK__MCA;
> > >         ras->ras_block.ras_comm.sub_block_index = 
> > > AMDGPU_RAS_MCA_BLOCK__MPIO;
> > >         ras->ras_block.ras_comm.type = 
> > > AMDGPU_RAS_ERROR__MULTI_UNCORRECTABLE;
> > >
> > > ---
> > > base-commit: 0f23d56f17fdfc7db69d51f64c8b91bbab947aa9
> > > change-id: 20260818-amdgpu-strcpy-0e92d18299c6
> > >
> > > Best regards,
> > > --
> > > Amin Gattout <[email protected]>
> > >
> >
>

Reply via email to