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/