diff options
author | Jiri Olsa <jolsa@redhat.com> | 2012-09-10 18:50:17 +0200 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2012-09-11 12:04:41 -0300 |
commit | b232e0732b1d763834c3d5b098d25d59337ba075 (patch) | |
tree | 8efb458e33231aa64779c0bfa5bf34dbf7f0d819 | |
parent | bdde37163e1fd474509aab90f5eaacee46100107 (diff) | |
download | op-kernel-dev-b232e0732b1d763834c3d5b098d25d59337ba075.zip op-kernel-dev-b232e0732b1d763834c3d5b098d25d59337ba075.tar.gz |
perf tools: Add memdup function
Adding memdup function to duplicate region of memory.
void *memdup(const void *src, size_t len)
Signed-off-by: Jiri Olsa <jolsa@redhat.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/1347295819-23177-3-git-send-email-jolsa@redhat.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
-rw-r--r-- | tools/perf/util/include/linux/string.h | 2 | ||||
-rw-r--r-- | tools/perf/util/string.c | 18 |
2 files changed, 19 insertions, 1 deletions
diff --git a/tools/perf/util/include/linux/string.h b/tools/perf/util/include/linux/string.h index 3b2f590..6f19c54 100644 --- a/tools/perf/util/include/linux/string.h +++ b/tools/perf/util/include/linux/string.h @@ -1 +1,3 @@ #include <string.h> + +void *memdup(const void *src, size_t len); diff --git a/tools/perf/util/string.c b/tools/perf/util/string.c index 199bc4d..3217059 100644 --- a/tools/perf/util/string.c +++ b/tools/perf/util/string.c @@ -1,5 +1,5 @@ #include "util.h" -#include "string.h" +#include "linux/string.h" #define K 1024LL /* @@ -335,3 +335,19 @@ 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; +} |