[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160802113302.GA7479@krava>
Date: Tue, 2 Aug 2016 13:33:02 +0200
From: Jiri Olsa <jolsa@...hat.com>
To: David Ahern <dsahern@...il.com>
Cc: Jiri Olsa <jolsa@...nel.org>,
Arnaldo Carvalho de Melo <acme@...nel.org>,
lkml <linux-kernel@...r.kernel.org>,
Ingo Molnar <mingo@...nel.org>,
Namhyung Kim <namhyung@...nel.org>,
Peter Zijlstra <a.p.zijlstra@...llo.nl>
Subject: [PATCHv2 1/7] tools lib: Add bitmap_alloc function
On Tue, Aug 02, 2016 at 11:33:59AM +0200, Jiri Olsa wrote:
> On Mon, Aug 01, 2016 at 12:45:18PM -0600, David Ahern wrote:
> > On 8/1/16 12:02 PM, Jiri Olsa wrote:
> > > @@ -65,4 +66,13 @@ static inline int test_and_set_bit(int nr, unsigned long *addr)
> > > return (old & mask) != 0;
> > > }
> > >
> > > +/**
> > > + * bitmap_alloc - Allocate bitmap
> > > + * @nr: Bit to set
> > > + */
> > > +static inline unsigned long *bitmap_alloc(int nbits)
> > > +{
> > > + return malloc(BITS_TO_LONGS(nbits) * sizeof(unsigned long));
> > > +}
> > > +
> > > #endif /* _PERF_BITOPS_H */
> >
> > calloc? Can't imagine any user wanting an uninitialized bitmap.
>
> hum, right.. all my code used bitmap_zero,
> but zalloc would be better choice in here
v2 attached, thanks
jirka
---
Adding bitmap_alloc function to dynamically allocate bitmap.
Link: http://lkml.kernel.org/n/tip-ictn3ke5ewrzwyn8webfeai9@git.kernel.org
Signed-off-by: Jiri Olsa <jolsa@...nel.org>
---
tools/include/linux/bitmap.h | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/tools/include/linux/bitmap.h b/tools/include/linux/bitmap.h
index 28f5493da491..60c44b615902 100644
--- a/tools/include/linux/bitmap.h
+++ b/tools/include/linux/bitmap.h
@@ -3,6 +3,7 @@
#include <string.h>
#include <linux/bitops.h>
+#include <stdlib.h>
#define DECLARE_BITMAP(name,bits) \
unsigned long name[BITS_TO_LONGS(bits)]
@@ -65,4 +66,13 @@ static inline int test_and_set_bit(int nr, unsigned long *addr)
return (old & mask) != 0;
}
+/**
+ * bitmap_alloc - Allocate bitmap
+ * @nr: Bit to set
+ */
+static inline unsigned long *bitmap_alloc(int nbits)
+{
+ return calloc(1, BITS_TO_LONGS(nbits) * sizeof(unsigned long));
+}
+
#endif /* _PERF_BITOPS_H */
--
2.4.11
Powered by blists - more mailing lists