All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] mm: uninline kstrdup()
@ 2023-02-28 15:34 Alexey Dobriyan
  0 siblings, 0 replies; only message in thread
From: Alexey Dobriyan @ 2023-02-28 15:34 UTC (permalink / raw)
  To: akpm; +Cc: linux-kernel

gcc inlines kstrdup into kstrdup_const() but it can very efficiently
tail call into it instead:

	$ ./scripts/bloat-o-meter ../vmlinux-000 ../obj/vmlinux
	add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-84 (-84)
	Function                                     old     new   delta
	kstrdup_const                                119      35     -84

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
---

 mm/util.c |    1 +
 1 file changed, 1 insertion(+)

--- a/mm/util.c
+++ b/mm/util.c
@@ -49,6 +49,7 @@ EXPORT_SYMBOL(kfree_const);
  *
  * Return: newly allocated copy of @s or %NULL in case of error
  */
+noinline
 char *kstrdup(const char *s, gfp_t gfp)
 {
 	size_t len;

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2023-02-28 15:35 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-02-28 15:34 [PATCH] mm: uninline kstrdup() Alexey Dobriyan

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.