summaryrefslogtreecommitdiffstats
path: root/lib/dynamic_debug.c
diff options
context:
space:
mode:
authorRasmus Villemoes <linux@rasmusvillemoes.dk>2015-11-06 19:30:15 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2015-11-06 20:50:42 -0500
commit3e406b1d7c1e5c14c84a71eb4bee5f46ba690401 (patch)
treea85bd1bbd0f91b3936643cae076a63bd448e4891 /lib/dynamic_debug.c
parenteac44a5e07be41a153e52c35c4d7dc0fec23adb3 (diff)
lib/dynamic_debug.c: use kstrdup_const
Using kstrdup_const, thus reusing .rodata when possible, saves around 2 kB of runtime memory on my laptop/.config combination. Signed-off-by: Rasmus Villemoes <linux@rasmusvillemoes.dk> Cc: Jason Baron <jbaron@akamai.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'lib/dynamic_debug.c')
-rw-r--r--lib/dynamic_debug.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/dynamic_debug.c b/lib/dynamic_debug.c
index e491e02eff54..e3952e9c8ec0 100644
--- a/lib/dynamic_debug.c
+++ b/lib/dynamic_debug.c
@@ -42,7 +42,7 @@ extern struct _ddebug __stop___verbose[];
42 42
43struct ddebug_table { 43struct ddebug_table {
44 struct list_head link; 44 struct list_head link;
45 char *mod_name; 45 const char *mod_name;
46 unsigned int num_ddebugs; 46 unsigned int num_ddebugs;
47 struct _ddebug *ddebugs; 47 struct _ddebug *ddebugs;
48}; 48};
@@ -841,12 +841,12 @@ int ddebug_add_module(struct _ddebug *tab, unsigned int n,
841 const char *name) 841 const char *name)
842{ 842{
843 struct ddebug_table *dt; 843 struct ddebug_table *dt;
844 char *new_name; 844 const char *new_name;
845 845
846 dt = kzalloc(sizeof(*dt), GFP_KERNEL); 846 dt = kzalloc(sizeof(*dt), GFP_KERNEL);
847 if (dt == NULL) 847 if (dt == NULL)
848 return -ENOMEM; 848 return -ENOMEM;
849 new_name = kstrdup(name, GFP_KERNEL); 849 new_name = kstrdup_const(name, GFP_KERNEL);
850 if (new_name == NULL) { 850 if (new_name == NULL) {
851 kfree(dt); 851 kfree(dt);
852 return -ENOMEM; 852 return -ENOMEM;
@@ -907,7 +907,7 @@ int ddebug_dyndbg_module_param_cb(char *param, char *val, const char *module)
907static void ddebug_table_free(struct ddebug_table *dt) 907static void ddebug_table_free(struct ddebug_table *dt)
908{ 908{
909 list_del_init(&dt->link); 909 list_del_init(&dt->link);
910 kfree(dt->mod_name); 910 kfree_const(dt->mod_name);
911 kfree(dt); 911 kfree(dt);
912} 912}
913 913