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?

        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