Hi,

On Tue,  1 Feb 2005 03:28:21 +0000, [EMAIL PROTECTED]
<[EMAIL PROTECTED]> wrote:
> 
> This patch creates the kstrdup library function so that it doesn't have to be
> reimplemented (or even EXPORT'ed) by every user that needs it.
> 
> Signed-off-by: Paulo Marques <[EMAIL PROTECTED]>
> 
> diff -buprN -X dontdiff vanilla-2.6.11-rc2-bk9/lib/string.c 
> linux-2.6.11-rc2-bk9/lib/string.c
> --- vanilla-2.6.11-rc2-bk9/lib/string.c 2005-01-31 20:05:37.000000000 +0000
> +++ linux-2.6.11-rc2-bk9/lib/string.c   2005-01-31 20:00:31.000000000 +0000
> @@ -599,3 +599,23 @@ void *memchr(const void *s, int c, size_
>  }
>  EXPORT_SYMBOL(memchr);
>  #endif
> +
> +/*
> + * kstrdup - allocate space for and copy an existing string
> + *
> + * @s: the string to duplicate
> + * @gfp: the GFP mask used in the kmalloc() call when allocating memory
> + */
> +char *kstrdup(const char *s, int gfp)
> +{
> +       int len;
> +       char *buf;
> +
> +       if (!s) return NULL;
> +
> +       len = strlen(s) + 1;
> +       buf = kmalloc(len, gfp);
> +       if (buf)
> +               memcpy(buf, s, len);
> +       return buf;
> +}
> +
> +EXPORT_SYMBOL(kstrdup);

kstrdup() is a special-case _memory allocator_ (not so much a string
operation) so I think it should go into mm/slab.c where we currently
have kcalloc().

P.S. Please inline patches to your email as per
Documentation/SubmittingPatches. I, for one, have trouble with
attachments.

                                   Pekka
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to