]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
perf mmap: Introduce mmap_cpu_mask__duplicate()
authorRiccardo Mancini <rickyman7@gmail.com>
Sat, 21 Aug 2021 09:19:10 +0000 (11:19 +0200)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Fri, 8 Oct 2021 14:42:17 +0000 (11:42 -0300)
This patch adds a new function in util/mmap.c to duplicate a mmap_cpu_mask.

This new function will be used in patches in the workqueue patchkit.

Signed-off-by: Riccardo Mancini <rickyman7@gmail.com>
Cc: Ian Rogers <irogers@google.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lore.kernel.org/lkml/8943a548ef7a3dd3e015095afad7e9a8b2154c05.1629490974.git.rickyman7@gmail.com
[ bitmap_alloc() was renamed to bitmap_zalloc() ]
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/util/mmap.c
tools/perf/util/mmap.h

index 512dc8b9c1685cf4b564f2934cd9268c72395693..23ecdba9e670687d9aecea3af20becf57ffdc228 100644 (file)
@@ -350,3 +350,14 @@ int perf_mmap__push(struct mmap *md, void *to,
 out:
        return rc;
 }
+
+int mmap_cpu_mask__duplicate(struct mmap_cpu_mask *original, struct mmap_cpu_mask *clone)
+{
+       clone->nbits = original->nbits;
+       clone->bits  = bitmap_zalloc(original->nbits);
+       if (!clone->bits)
+               return -ENOMEM;
+
+       memcpy(clone->bits, original->bits, MMAP_CPU_MASK_BYTES(original));
+       return 0;
+}
index af33118354dd38605ca175d1ab4b3ee39e973485..8e259b9610f83c96978bab940e880527cd1228e6 100644 (file)
@@ -64,4 +64,7 @@ size_t mmap__mmap_len(struct mmap *map);
 
 void mmap_cpu_mask__scnprintf(struct mmap_cpu_mask *mask, const char *tag);
 
+int mmap_cpu_mask__duplicate(struct mmap_cpu_mask *original,
+                               struct mmap_cpu_mask *clone);
+
 #endif /*__PERF_MMAP_H */