All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/amdgpu: Replace deprecated strcpy with strscpy
@ 2026-08-18 10:32 Amin Gattout
  2026-08-18 13:01 ` Alex Deucher
  0 siblings, 1 reply; 6+ messages in thread
From: Amin Gattout @ 2026-08-18 10:32 UTC (permalink / raw)
  To: Alex Deucher, Christian König, David Airlie, Simona Vetter
  Cc: amd-gfx, dri-devel, linux-kernel, Amin Gattout

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 <amin.gattout@gmail.com>
---
 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");
 	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 <amin.gattout@gmail.com>


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH] drm/amdgpu: Replace deprecated strcpy with strscpy
  2026-08-18 10:32 [PATCH] drm/amdgpu: Replace deprecated strcpy with strscpy Amin Gattout
@ 2026-08-18 13:01 ` Alex Deucher
  2026-08-18 14:21   ` David Laight
  0 siblings, 1 reply; 6+ messages in thread
From: Alex Deucher @ 2026-08-18 13:01 UTC (permalink / raw)
  To: Amin Gattout
  Cc: Alex Deucher, Christian König, David Airlie, Simona Vetter,
	amd-gfx, dri-devel, linux-kernel

Applied.  Thanks!

On Tue, Aug 18, 2026 at 7:10 AM Amin Gattout <amin.gattout@gmail.com> 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 <amin.gattout@gmail.com>
> ---
>  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");
>         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 <amin.gattout@gmail.com>
>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] drm/amdgpu: Replace deprecated strcpy with strscpy
  2026-08-18 13:01 ` Alex Deucher
@ 2026-08-18 14:21   ` David Laight
  2026-08-18 17:39     ` Alex Deucher
  0 siblings, 1 reply; 6+ messages in thread
From: David Laight @ 2026-08-18 14:21 UTC (permalink / raw)
  To: Alex Deucher
  Cc: Amin Gattout, Alex Deucher, Christian König, David Airlie,
	Simona Vetter, amd-gfx, dri-devel, linux-kernel

On Tue, 18 Aug 2026 09:01:43 -0400
Alex Deucher <alexdeucher@gmail.com> wrote:

> Applied.  Thanks!
> 
> On Tue, Aug 18, 2026 at 7:10 AM Amin Gattout <amin.gattout@gmail.com> 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 <amin.gattout@gmail.com>
> > ---
> >  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 <amin.gattout@gmail.com>
> >  
> 


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] drm/amdgpu: Replace deprecated strcpy with strscpy
  2026-08-18 14:21   ` David Laight
@ 2026-08-18 17:39     ` Alex Deucher
  2026-08-18 17:51       ` Amin
  0 siblings, 1 reply; 6+ messages in thread
From: Alex Deucher @ 2026-08-18 17:39 UTC (permalink / raw)
  To: David Laight
  Cc: Amin Gattout, Alex Deucher, Christian König, David Airlie,
	Simona Vetter, amd-gfx, dri-devel, linux-kernel

On Tue, Aug 18, 2026 at 10:21 AM David Laight
<david.laight.linux@gmail.com> wrote:
>
> On Tue, 18 Aug 2026 09:01:43 -0400
> Alex Deucher <alexdeucher@gmail.com> wrote:
>
> > Applied.  Thanks!
> >
> > On Tue, Aug 18, 2026 at 7:10 AM Amin Gattout <amin.gattout@gmail.com> 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 <amin.gattout@gmail.com>
> > > ---
> > >  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 <amin.gattout@gmail.com>
> > >
> >
>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] drm/amdgpu: Replace deprecated strcpy with strscpy
  2026-08-18 17:39     ` Alex Deucher
@ 2026-08-18 17:51       ` Amin
  2026-08-18 17:56         ` Alex Deucher
  0 siblings, 1 reply; 6+ messages in thread
From: Amin @ 2026-08-18 17:51 UTC (permalink / raw)
  To: Alex Deucher
  Cc: David Laight, Alex Deucher, Christian König, David Airlie,
	Simona Vetter, amd-gfx, dri-devel, linux-kernel

You raise a fair point about the compile-time truncation check.
My reasoning follows the kernel's own deprecation guidance, which
explicitly lists strcpy() as deprecated and names strscpy() as the
safe replacement:

https://www.kernel.org/doc/html/latest/process/deprecated.html#strcpy

Regards.
Amin.

Le mar. 18 août 2026 à 19:39, Alex Deucher <alexdeucher@gmail.com> a écrit :
>
> On Tue, Aug 18, 2026 at 10:21 AM David Laight
> <david.laight.linux@gmail.com> wrote:
> >
> > On Tue, 18 Aug 2026 09:01:43 -0400
> > Alex Deucher <alexdeucher@gmail.com> wrote:
> >
> > > Applied.  Thanks!
> > >
> > > On Tue, Aug 18, 2026 at 7:10 AM Amin Gattout <amin.gattout@gmail.com> 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 <amin.gattout@gmail.com>
> > > > ---
> > > >  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 <amin.gattout@gmail.com>
> > > >
> > >
> >

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] drm/amdgpu: Replace deprecated strcpy with strscpy
  2026-08-18 17:51       ` Amin
@ 2026-08-18 17:56         ` Alex Deucher
  0 siblings, 0 replies; 6+ messages in thread
From: Alex Deucher @ 2026-08-18 17:56 UTC (permalink / raw)
  To: Amin
  Cc: David Laight, Alex Deucher, Christian König, David Airlie,
	Simona Vetter, amd-gfx, dri-devel, linux-kernel

On Tue, Aug 18, 2026 at 1:51 PM Amin <amin.gattout@gmail.com> wrote:
>
> You raise a fair point about the compile-time truncation check.
> My reasoning follows the kernel's own deprecation guidance, which
> explicitly lists strcpy() as deprecated and names strscpy() as the
> safe replacement:
>
> https://www.kernel.org/doc/html/latest/process/deprecated.html#strcpy

RIght.  My thinking was that strscpy() would be preferred to avoid
static checkers from complaining about strcpy().

Alex

>
> Regards.
> Amin.
>
> Le mar. 18 août 2026 à 19:39, Alex Deucher <alexdeucher@gmail.com> a écrit :
> >
> > On Tue, Aug 18, 2026 at 10:21 AM David Laight
> > <david.laight.linux@gmail.com> wrote:
> > >
> > > On Tue, 18 Aug 2026 09:01:43 -0400
> > > Alex Deucher <alexdeucher@gmail.com> wrote:
> > >
> > > > Applied.  Thanks!
> > > >
> > > > On Tue, Aug 18, 2026 at 7:10 AM Amin Gattout <amin.gattout@gmail.com> 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 <amin.gattout@gmail.com>
> > > > > ---
> > > > >  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 <amin.gattout@gmail.com>
> > > > >
> > > >
> > >

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2026-08-18 17:56 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-18 10:32 [PATCH] drm/amdgpu: Replace deprecated strcpy with strscpy Amin Gattout
2026-08-18 13:01 ` Alex Deucher
2026-08-18 14:21   ` David Laight
2026-08-18 17:39     ` Alex Deucher
2026-08-18 17:51       ` Amin
2026-08-18 17:56         ` Alex Deucher

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.