Rasmus Villemoes 0a9df786a6 lib/kasprintf.c: introduce kvasprintf_const
This adds kvasprintf_const which tries to use kstrdup_const if possible:
If the format string contains no % characters, or if the format string is
exactly "%s", we delegate to kstrdup_const.  Otherwise, we fall back to
kvasprintf.

Just as for kstrdup_const, the main motivation is to save memory by
reusing .rodata when possible.

The return value should be freed by kfree_const, just like for
kstrdup_const.

There is deliberately no kasprintf_const: In the vast majority of cases,
the format string argument is a literal, so one can determine statically
whether one could instead use kstrdup_const directly (which would also
require one to change all corresponding kfree calls to kfree_const).

Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk>
Cc: Greg KH <greg@kroah.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2015-11-06 17:50:42 -08:00
..
2014-10-09 11:35:48 +03:00
2015-07-27 14:06:24 +02:00
2015-05-28 11:31:52 +09:30
2015-10-05 04:49:54 +01:00
2014-04-30 19:49:37 +01:00
2014-08-06 18:01:25 -07:00
2015-07-17 16:39:53 -07:00
2014-05-05 09:09:14 +02:00
2014-08-08 15:57:25 -07:00
2015-07-28 08:50:42 +01:00
2015-02-12 18:54:15 -08:00
2014-06-25 17:45:43 -07:00
2015-09-08 14:35:59 -07:00
2015-02-12 18:54:16 -08:00
2015-03-23 22:12:08 -04:00
2015-06-25 17:00:40 -07:00