tools: Adopt memdup() from tools/perf, moving it to tools/lib/string.c
tip-bot for Arnaldo Carvalho de Melo
merge botCommit-ID: 4ddd32741da87657113d964588ce13ee64b34820 Gitweb: http://git.kernel.org/tip/4ddd32741da87657113d964588ce13ee64b34820 Author: Arnaldo Carvalho de Melo <[email protected]> AuthorDate: Mon, 16 Nov 2015 11:36:29 -0300 Committer: Arnaldo Carvalho de Melo <[email protected]> CommitDate: Wed, 18 Nov 2015 17:51:02 -0300
tools: Adopt memdup() from tools/perf, moving it to tools/lib/string.c
That will contain more string functions with counterparts, sometimes verbatim copies, in the kernel.
Acked-by Wang Nan <[email protected]>
Cc Adrian Hunter <[email protected]>
Cc Alexey Dobriyan <[email protected]>
Cc David Ahern <[email protected]>
Cc Jiri Olsa <[email protected]>
Cc Namhyung Kim <[email protected]>
Signed-off-by Arnaldo Carvalho de Melo <[email protected]>
--- tools/include/linux/string.h | 9 +++++++++ tools/lib/string.c | 19 +++++++++++++++++++ tools/perf/MANIFEST | 2 ++ tools/perf/util/Build | 6 ++++++ tools/perf/util/include/linux/string.h | 3 --- tools/perf/util/string.c | 16 ---------------- 6 files changed, 36 insertions(+), 19 deletions(-)
tools/include/linux/string.h new file +9 -0
@@ -0,0 +1,9 @@ +#ifndef _TOOLS_LINUX_STRING_H_ +#define _TOOLS_LINUX_STRING_H_ + + +#include <linux/types.h> /* for size_t */ + +void *memdup (const void *src,size_t len); + +#endif /* _LINUX_STRING_H_ */
tools/lib/string.c new file +19 -0
@@ -0,0 +1,19 @@ +#include <stdlib.h> +#include <string.h> +#include <linux/string.h> + +/** +* memdup - duplicate region of memory +* +* @src: memory region to duplicate +* @len: memory region length +*/ +void *memdup (const void *src,size_t len) +{ +void *p =malloc (len); + +if (p) +memcpy (p, src, len); + +return p; +}
tools/perf/MANIFEST +2 -0
@@ -22,6 +22,7 @@ tools/lib/api tools/lib/bpf tools/lib/hweight.c tools/lib/rbtree.c +tools/lib/string.c tools/lib/symbol/kallsyms.c tools/lib/symbol/kallsyms.h tools/lib/util/find_next_bit.c
@@ -50,6 +51,7 @@ tools/include/linux/log2.h tools/include/linux/poison.h tools/include/linux/rbtree.h tools/include/linux/rbtree_augmented.h +tools/include/linux/string.h tools/include/linux/types.h tools/include/linux/err.h include/asm-generic/bitops/arch_hweight.h
tools/perf/util/Build +6 -0
@@ -21,6 +21,7 @@ libperf-y += parse-events.o libperf-y += perf_regs.o libperf-y += path.o libperf-y += rbtree.o +libperf-y += libstring.o libperf-y += bitmap.o libperf-y += hweight.o libperf-y += run-command.o
@@ -138,6 +139,7 @@ $(OUTPUT)util/pmu.o: $(OUTPUT)util/pmu-flex.c $(OUTPUT)util/pmu-bison.c CFLAGS_find_next_bit.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" CFLAGS_rbtree.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" +CFLAGS_libstring.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" CFLAGS_hweight.o += -Wno-unused-parameter -DETC_PERFCONFIG="BUILD_STR($(ETC_PERFCONFIG_SQ))" CFLAGS_parse-events.o += -Wno-redundant-decls
@@ -153,6 +155,10 @@ $(OUTPUT)util/rbtree.o: ../lib/rbtree.c FORCE $(call rule_mkdir) $(call if_changed_dep,cc_o_c) +$(OUTPUT)util/libstring.o: ../lib/string.c FORCE + $(call rule_mkdir) + $(call if_changed_dep,cc_o_c) + $(OUTPUT)util/hweight.o: ../lib/hweight.c FORCE $(call rule_mkdir) $(call if_changed_dep,cc_o_c)
tools/perf/util/include/linux/string.h deleted +0 -3
@@ -1,3 +0,0 @@ -#include <string.h> - -void *memdup (const void *src,size_t len);
tools/perf/util/string.c +0 -16
@@ -342,22 +342,6 @@ char *rtrim(char *s)return s; } -/** -* memdup - duplicate region of memory -* @src: memory region to duplicate -* @len: memory region length -*/ -void *memdup (const void *src,size_t len) -{ -void *p; - - p =malloc (len); -if (p) -memcpy (p, src, len); - -return p; -} -char *asprintf_expr_inout_ints (const char *var,bool in,size_t nints,int *ints) {/*