Messages in this thread | | | Subject | Re: [PATCH v5 2/3] perf mmap: declare type for cpu mask of arbitrary length | From | Alexey Budankov <> | Date | Thu, 5 Dec 2019 10:31:17 +0300 |
| |
On 04.12.2019 16:49, Arnaldo Carvalho de Melo wrote: > Em Tue, Dec 03, 2019 at 02:44:18PM +0300, Alexey Budankov escreveu: >> >> Declare a dedicated struct map_cpu_mask type for cpu masks of >> arbitrary length. Mask is available thru bits pointer and the >> mask length is kept in nbits field. MMAP_CPU_MASK_BYTES() macro >> returns mask storage size in bytes. mmap_cpu_mask__scnprintf() >> function can be used to log text representation of the mask. >> >> Signed-off-by: Alexey Budankov <alexey.budankov@linux.intel.com> >> --- >> tools/perf/util/mmap.c | 12 ++++++++++++ >> tools/perf/util/mmap.h | 11 +++++++++++ >> 2 files changed, 23 insertions(+) >> >> diff --git a/tools/perf/util/mmap.c b/tools/perf/util/mmap.c >> index 063d1b93c53d..43c12b4a3e17 100644 >> --- a/tools/perf/util/mmap.c >> +++ b/tools/perf/util/mmap.c >> @@ -23,6 +23,18 @@ >> #include "mmap.h" >> #include "../perf.h" >> #include <internal/lib.h> /* page_size */ >> +#include <linux/bitmap.h> >> + >> +#define MASK_SIZE 1023 >> +void mmap_cpu_mask__scnprintf(struct mmap_cpu_mask *mask, const char *tag) >> +{ >> + char buf[MASK_SIZE + 1]; >> + size_t len; >> + >> + len = bitmap_scnprintf(mask->bits, mask->nbits, buf, MASK_SIZE); >> + buf[len] = '\0'; >> + pr_debug("%p: %s mask[%ld]: %s\n", mask, tag, mask->nbits, buf); >> +} > > Above should also be %zd, fixed.
Thanks Arnaldo, Jiri! Appreciate you collaboration and help.
~Alexey
> > - Arnaldo >
| |