perf record: Add ID and to recorded event data when recording multiple events
authorEric B Munson <ebmunson@us.ibm.com>
Fri, 5 Mar 2010 15:51:05 +0000 (12:51 -0300)
committerIngo Molnar <mingo@elte.hu>
Wed, 10 Mar 2010 12:53:46 +0000 (13:53 +0100)
Currently perf record does not write the ID or the to disk for
events. This doesn't allow report to tell if an event stream
contains one or more types of events.  This patch adds this
entry to the list of data that record will write to disk if more
than one event was requested.

Signed-off-by: Eric B Munson <ebmunson@us.ibm.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Paul Mackerras <paulus@samba.org>
LKML-Reference: <1267804269-22660-2-git-send-email-acme@infradead.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
tools/perf/builtin-record.c

index 771533ced6a803d23886214d5551df1f0db440b1..f573bbb8357276d04a1f5fc6f6941f1c63a03183 100644 (file)
@@ -244,6 +244,9 @@ static void create_counter(int counter, int cpu, pid_t pid)
 
        attr->sample_type       |= PERF_SAMPLE_IP | PERF_SAMPLE_TID;
 
+       if (nr_counters > 1)
+               attr->sample_type |= PERF_SAMPLE_ID;
+
        if (freq) {
                attr->sample_type       |= PERF_SAMPLE_PERIOD;
                attr->freq              = 1;