Re: [PATCH v1 2/3] perf mmap: declare type for cpu mask of arbitrary length

From: Jiri Olsa
Date: Fri Nov 22 2019 - 08:20:45 EST


On Wed, Nov 20, 2019 at 12:37:48PM +0300, Alexey Budankov wrote:
>
> 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.
>
> Signed-off-by: Alexey Budankov <alexey.budankov@xxxxxxxxxxxxxxx>
> ---
> tools/perf/util/mmap.h | 9 +++++++++
> 1 file changed, 9 insertions(+)
>
> diff --git a/tools/perf/util/mmap.h b/tools/perf/util/mmap.h
> index bee4e83f7109..a218a0eb1466 100644
> --- a/tools/perf/util/mmap.h
> +++ b/tools/perf/util/mmap.h
> @@ -15,6 +15,15 @@
> #include "event.h"
>
> struct aiocb;
> +
> +struct mmap_cpu_mask {
> + unsigned long *bits;
> + size_t nbits;
> +};
> +
> +#define mmap_cpu_mask_bytes(m) \

we try to have all macros upper case

> + (BITS_TO_LONGS(((struct mmap_cpu_mask *)m)->nbits) * sizeof(unsigned long))

we have BITS_TO_BYTES

thanks,
jirka

> +
> /**
> * struct mmap - perf's ring buffer mmap details
> *
> --
> 2.20.1
>