Re: [PATCH v2] kdb: Replace deprecated strcpy() with memmove() in vkdb_printf()

From: Doug Anderson
Date: Tue Aug 12 2025 - 12:25:57 EST


Hi,

On Tue, Aug 12, 2025 at 6:27 AM Thorsten Blum <thorsten.blum@xxxxxxxxx> wrote:
>
> strcpy() is deprecated and its behavior is undefined when the source and
> destination buffers overlap. Use memmove() instead to avoid any
> undefined behavior.
>
> Adjust comments for clarity.
>
> Link: https://github.com/KSPP/linux/issues/88
> Signed-off-by: Thorsten Blum <thorsten.blum@xxxxxxxxx>
> ---
> Changes in v2:
> - Use memmove() because of strcpy()'s undefined behavior with
> overlapping buffers as suggested by Doug Anderson
> - Compile-tested only
> - Link to v1: https://lore.kernel.org/lkml/20250811170351.68985-1-thorsten.blum@xxxxxxxxx/
> ---
> kernel/debug/kdb/kdb_io.c | 14 ++++++++------
> 1 file changed, 8 insertions(+), 6 deletions(-)

Much nicer, thank you!

Given that the old code was officially relying on undefined behavior
of strcpy() before, I'd personally even add:

Fixes: 5d5314d6795f ("kdb: core for kgdb back end (1 of 2)")

In any case:

Reviewed-by: Douglas Anderson <dianders@xxxxxxxxxxxx>