diff options
author | Frederic Weisbecker <fweisbec@gmail.com> | 2009-10-17 11:57:18 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-10-19 03:26:35 -0400 |
commit | db9f11e36d0125a5e3e595ea9ef2e4b89f7e8737 (patch) | |
tree | d0622b32432b06391a3f0ebece4d296a72bd0f3b /tools/perf/util/header.h | |
parent | 2ba0825075e76236d22a20decd8e2346a99faabe (diff) |
perf tools: Use DECLARE_BITMAP instead of an open-coded array
Use DECLARE_BITMAP instead of an open coded array for our bitmap
of featured sections.
This makes the array an unsigned long instead of a u64 but since
we use a 256 bits bitmap, the array size shouldn't vary between
different boxes.
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Steven Rostedt <rostedt@goodmis.org>
LKML-Reference: <1255795038-13751-1-git-send-email-fweisbec@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'tools/perf/util/header.h')
-rw-r--r-- | tools/perf/util/header.h | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/tools/perf/util/header.h b/tools/perf/util/header.h index 0eb4a9126b7c..2ea9dfb1236a 100644 --- a/tools/perf/util/header.h +++ b/tools/perf/util/header.h | |||
@@ -5,6 +5,8 @@ | |||
5 | #include <sys/types.h> | 5 | #include <sys/types.h> |
6 | #include "types.h" | 6 | #include "types.h" |
7 | 7 | ||
8 | #include <linux/bitmap.h> | ||
9 | |||
8 | struct perf_header_attr { | 10 | struct perf_header_attr { |
9 | struct perf_event_attr attr; | 11 | struct perf_event_attr attr; |
10 | int ids, size; | 12 | int ids, size; |
@@ -16,8 +18,6 @@ struct perf_header_attr { | |||
16 | 18 | ||
17 | #define HEADER_FEAT_BITS 256 | 19 | #define HEADER_FEAT_BITS 256 |
18 | 20 | ||
19 | typedef typeof(u64[HEADER_FEAT_BITS / 8]) feat_mask_t; | ||
20 | |||
21 | struct perf_header { | 21 | struct perf_header { |
22 | int frozen; | 22 | int frozen; |
23 | int attrs, size; | 23 | int attrs, size; |
@@ -27,14 +27,9 @@ struct perf_header { | |||
27 | u64 data_size; | 27 | u64 data_size; |
28 | u64 event_offset; | 28 | u64 event_offset; |
29 | u64 event_size; | 29 | u64 event_size; |
30 | feat_mask_t adds_features; | 30 | DECLARE_BITMAP(adds_features, HEADER_FEAT_BITS); |
31 | }; | 31 | }; |
32 | 32 | ||
33 | static inline unsigned long *perf_header__adds_mask(struct perf_header *self) | ||
34 | { | ||
35 | return (unsigned long *)(void *)&self->adds_features; | ||
36 | } | ||
37 | |||
38 | struct perf_header *perf_header__read(int fd); | 33 | struct perf_header *perf_header__read(int fd); |
39 | void perf_header__write(struct perf_header *self, int fd); | 34 | void perf_header__write(struct perf_header *self, int fd); |
40 | 35 | ||