lkml.org 
[lkml]   [2018]   [Aug]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] lib/parser.c: switch match_strdup() over to use kmemdup_nul()
On Thu, 30 Aug 2018 12:44:36 -0700 Eric Biggers <ebiggers@kernel.org> wrote:

> From: Eric Biggers <ebiggers@google.com>
>
> This simplifies the code. No change in behavior.
>
> ...
>
> --- a/lib/parser.c
> +++ b/lib/parser.c
> @@ -327,10 +327,6 @@ EXPORT_SYMBOL(match_strlcpy);
> */
> char *match_strdup(const substring_t *s)
> {
> - size_t sz = s->to - s->from + 1;
> - char *p = kmalloc(sz, GFP_KERNEL);
> - if (p)
> - match_strlcpy(p, s, sz);
> - return p;
> + return kmemdup_nul(s->from, s->to - s->from, GFP_KERNEL);
> }
> EXPORT_SYMBOL(match_strdup);

Huh. I never noticed kmemdup_nul() fly past - it rather happened on
the sly. We do have some fun goodies in there.

We could make match_strdup() an inline now. But that will probably
produce a fatter kernel, as each callsite would then need to prepare
three args rather than one.

\
 
 \ /
  Last update: 2018-08-31 01:20    [W:0.026 / U:0.068 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site