perf record: Use struct perf_mmap and helpers

Paving the way to using perf_evsel->mmap, do this to reduce the patch
noise in the next ones.

Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Tom Zanussi <tzanussi@gmail.com>
LKML-Reference: <new-submission>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
Arnaldo Carvalho de Melo 2011-01-12 17:07:28 -02:00
parent 70082dd92c
commit 744bd8aa3c
1 changed files with 4 additions and 21 deletions

View File

@ -78,26 +78,9 @@ static off_t post_processing_offset;
static struct perf_session *session; static struct perf_session *session;
static const char *cpu_list; static const char *cpu_list;
struct mmap_data { static struct perf_mmap mmap_array[MAX_NR_CPUS];
void *base;
unsigned int mask;
unsigned int prev;
};
static struct mmap_data mmap_array[MAX_NR_CPUS]; static void mmap_write_tail(struct perf_mmap *md, unsigned long tail)
static unsigned long mmap_read_head(struct mmap_data *md)
{
struct perf_event_mmap_page *pc = md->base;
long head;
head = pc->data_head;
rmb();
return head;
}
static void mmap_write_tail(struct mmap_data *md, unsigned long tail)
{ {
struct perf_event_mmap_page *pc = md->base; struct perf_event_mmap_page *pc = md->base;
@ -136,9 +119,9 @@ static int process_synthesized_event(event_t *event,
return 0; return 0;
} }
static void mmap_read(struct mmap_data *md) static void mmap_read(struct perf_mmap *md)
{ {
unsigned int head = mmap_read_head(md); unsigned int head = perf_mmap__read_head(md);
unsigned int old = md->prev; unsigned int old = md->prev;
unsigned char *data = md->base + page_size; unsigned char *data = md->base + page_size;
unsigned long size; unsigned long size;