linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] mm/kasan: switch from strlcpy to strscpy
@ 2021-02-22  5:10 Zhiyuan Dai
  2021-02-22  7:45 ` Alexander Potapenko
  0 siblings, 1 reply; 3+ messages in thread
From: Zhiyuan Dai @ 2021-02-22  5:10 UTC (permalink / raw)
  To: ryabinin.a.a, glider, andreyknvl, dvyukov, akpm
  Cc: linux-mm, linux-kernel, Zhiyuan Dai

strlcpy is marked as deprecated in Documentation/process/deprecated.rst,
and there is no functional difference when the caller expects truncation
(when not checking the return value). strscpy is relatively better as it
also avoids scanning the whole source string.

Signed-off-by: Zhiyuan Dai <daizhiyuan@phytium.com.cn>
---
 mm/kasan/report_generic.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mm/kasan/report_generic.c b/mm/kasan/report_generic.c
index 8a9c889..fc7f7ad 100644
--- a/mm/kasan/report_generic.c
+++ b/mm/kasan/report_generic.c
@@ -148,7 +148,7 @@ static bool __must_check tokenize_frame_descr(const char **frame_descr,
 		}
 
 		/* Copy token (+ 1 byte for '\0'). */
-		strlcpy(token, *frame_descr, tok_len + 1);
+		strscpy(token, *frame_descr, tok_len + 1);
 	}
 
 	/* Advance frame_descr past separator. */
-- 
1.8.3.1



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

* Re: [PATCH] mm/kasan: switch from strlcpy to strscpy
  2021-02-22  5:10 [PATCH] mm/kasan: switch from strlcpy to strscpy Zhiyuan Dai
@ 2021-02-22  7:45 ` Alexander Potapenko
  2021-02-24 15:36   ` Andrey Konovalov
  0 siblings, 1 reply; 3+ messages in thread
From: Alexander Potapenko @ 2021-02-22  7:45 UTC (permalink / raw)
  To: Zhiyuan Dai
  Cc: Andrey Ryabinin, Andrey Konovalov, Dmitriy Vyukov, Andrew Morton,
	Linux Memory Management List, LKML

On Mon, Feb 22, 2021 at 6:10 AM Zhiyuan Dai <daizhiyuan@phytium.com.cn> wrote:
>
> strlcpy is marked as deprecated in Documentation/process/deprecated.rst,
> and there is no functional difference when the caller expects truncation
> (when not checking the return value). strscpy is relatively better as it
> also avoids scanning the whole source string.

Looks like a good thing to do.

> Signed-off-by: Zhiyuan Dai <daizhiyuan@phytium.com.cn>
Acked-by: Alexander Potapenko <glider@google.com>

> ---
>  mm/kasan/report_generic.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/mm/kasan/report_generic.c b/mm/kasan/report_generic.c
> index 8a9c889..fc7f7ad 100644
> --- a/mm/kasan/report_generic.c
> +++ b/mm/kasan/report_generic.c
> @@ -148,7 +148,7 @@ static bool __must_check tokenize_frame_descr(const char **frame_descr,
>                 }
>
>                 /* Copy token (+ 1 byte for '\0'). */
> -               strlcpy(token, *frame_descr, tok_len + 1);
> +               strscpy(token, *frame_descr, tok_len + 1);
>         }
>
>         /* Advance frame_descr past separator. */
> --
> 1.8.3.1
>


-- 
Alexander Potapenko
Software Engineer

Google Germany GmbH
Erika-Mann-Straße, 33
80636 München

Geschäftsführer: Paul Manicle, Halimah DeLaine Prado
Registergericht und -nummer: Hamburg, HRB 86891
Sitz der Gesellschaft: Hamburg


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

* Re: [PATCH] mm/kasan: switch from strlcpy to strscpy
  2021-02-22  7:45 ` Alexander Potapenko
@ 2021-02-24 15:36   ` Andrey Konovalov
  0 siblings, 0 replies; 3+ messages in thread
From: Andrey Konovalov @ 2021-02-24 15:36 UTC (permalink / raw)
  To: Zhiyuan Dai
  Cc: Andrey Ryabinin, Dmitriy Vyukov, Andrew Morton,
	Linux Memory Management List, LKML, Alexander Potapenko

On Mon, Feb 22, 2021 at 8:45 AM Alexander Potapenko <glider@google.com> wrote:
>
> On Mon, Feb 22, 2021 at 6:10 AM Zhiyuan Dai <daizhiyuan@phytium.com.cn> wrote:
> >
> > strlcpy is marked as deprecated in Documentation/process/deprecated.rst,
> > and there is no functional difference when the caller expects truncation
> > (when not checking the return value). strscpy is relatively better as it
> > also avoids scanning the whole source string.
>
> Looks like a good thing to do.
>
> > Signed-off-by: Zhiyuan Dai <daizhiyuan@phytium.com.cn>
> Acked-by: Alexander Potapenko <glider@google.com>
>
> > ---
> >  mm/kasan/report_generic.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/mm/kasan/report_generic.c b/mm/kasan/report_generic.c
> > index 8a9c889..fc7f7ad 100644
> > --- a/mm/kasan/report_generic.c
> > +++ b/mm/kasan/report_generic.c
> > @@ -148,7 +148,7 @@ static bool __must_check tokenize_frame_descr(const char **frame_descr,
> >                 }
> >
> >                 /* Copy token (+ 1 byte for '\0'). */
> > -               strlcpy(token, *frame_descr, tok_len + 1);
> > +               strscpy(token, *frame_descr, tok_len + 1);
> >         }
> >
> >         /* Advance frame_descr past separator. */
> > --
> > 1.8.3.1
> >

Reviewed-by: Andrey Konovalov <andreyknvl@gmail.com>

Thanks!


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

end of thread, other threads:[~2021-02-24 15:36 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-22  5:10 [PATCH] mm/kasan: switch from strlcpy to strscpy Zhiyuan Dai
2021-02-22  7:45 ` Alexander Potapenko
2021-02-24 15:36   ` Andrey Konovalov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).