aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/builtin-record.c
diff options
context:
space:
mode:
authorArnaldo Carvalho de Melo <acme@redhat.com>2011-01-29 11:01:45 -0500
committerArnaldo Carvalho de Melo <acme@redhat.com>2011-01-29 13:25:37 -0500
commit8115d60c323dd9931b95221c0a392aeddc1d6ef3 (patch)
tree13e75d71c5163c78efc9d8ab33988cc6c7be74a1 /tools/perf/builtin-record.c
parent8d50e5b4171a69cf48ca94a1e7c14033d0b4771d (diff)
perf tools: Kill event_t typedef, use 'union perf_event' instead
And move the event_t methods to the perf_event__ too. No code changes, just namespace consistency. 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>
Diffstat (limited to 'tools/perf/builtin-record.c')
-rw-r--r--tools/perf/builtin-record.c56
1 files changed, 30 insertions, 26 deletions
diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c
index 5d3e4b32072..edc3555098c 100644
--- a/tools/perf/builtin-record.c
+++ b/tools/perf/builtin-record.c
@@ -100,7 +100,7 @@ static void write_output(void *buf, size_t size)
100 } 100 }
101} 101}
102 102
103static int process_synthesized_event(event_t *event, 103static int process_synthesized_event(union perf_event *event,
104 struct perf_sample *sample __used, 104 struct perf_sample *sample __used,
105 struct perf_session *self __used) 105 struct perf_session *self __used)
106{ 106{
@@ -404,7 +404,7 @@ static void atexit_header(void)
404 } 404 }
405} 405}
406 406
407static void event__synthesize_guest_os(struct machine *machine, void *data) 407static void perf_event__synthesize_guest_os(struct machine *machine, void *data)
408{ 408{
409 int err; 409 int err;
410 struct perf_session *psession = data; 410 struct perf_session *psession = data;
@@ -420,8 +420,8 @@ static void event__synthesize_guest_os(struct machine *machine, void *data)
420 *method is used to avoid symbol missing when the first addr is 420 *method is used to avoid symbol missing when the first addr is
421 *in module instead of in guest kernel. 421 *in module instead of in guest kernel.
422 */ 422 */
423 err = event__synthesize_modules(process_synthesized_event, 423 err = perf_event__synthesize_modules(process_synthesized_event,
424 psession, machine); 424 psession, machine);
425 if (err < 0) 425 if (err < 0)
426 pr_err("Couldn't record guest kernel [%d]'s reference" 426 pr_err("Couldn't record guest kernel [%d]'s reference"
427 " relocation symbol.\n", machine->pid); 427 " relocation symbol.\n", machine->pid);
@@ -430,11 +430,12 @@ static void event__synthesize_guest_os(struct machine *machine, void *data)
430 * We use _stext for guest kernel because guest kernel's /proc/kallsyms 430 * We use _stext for guest kernel because guest kernel's /proc/kallsyms
431 * have no _text sometimes. 431 * have no _text sometimes.
432 */ 432 */
433 err = event__synthesize_kernel_mmap(process_synthesized_event, 433 err = perf_event__synthesize_kernel_mmap(process_synthesized_event,
434 psession, machine, "_text"); 434 psession, machine, "_text");
435 if (err < 0) 435 if (err < 0)
436 err = event__synthesize_kernel_mmap(process_synthesized_event, 436 err = perf_event__synthesize_kernel_mmap(process_synthesized_event,
437 psession, machine, "_stext"); 437 psession, machine,
438 "_stext");
438 if (err < 0) 439 if (err < 0)
439 pr_err("Couldn't record guest kernel [%d]'s reference" 440 pr_err("Couldn't record guest kernel [%d]'s reference"
440 " relocation symbol.\n", machine->pid); 441 " relocation symbol.\n", machine->pid);
@@ -617,16 +618,16 @@ static int __cmd_record(int argc, const char **argv)
617 perf_session__set_sample_id_all(session, sample_id_all_avail); 618 perf_session__set_sample_id_all(session, sample_id_all_avail);
618 619
619 if (pipe_output) { 620 if (pipe_output) {
620 err = event__synthesize_attrs(&session->header, 621 err = perf_event__synthesize_attrs(&session->header,
621 process_synthesized_event, 622 process_synthesized_event,
622 session); 623 session);
623 if (err < 0) { 624 if (err < 0) {
624 pr_err("Couldn't synthesize attrs.\n"); 625 pr_err("Couldn't synthesize attrs.\n");
625 return err; 626 return err;
626 } 627 }
627 628
628 err = event__synthesize_event_types(process_synthesized_event, 629 err = perf_event__synthesize_event_types(process_synthesized_event,
629 session); 630 session);
630 if (err < 0) { 631 if (err < 0) {
631 pr_err("Couldn't synthesize event_types.\n"); 632 pr_err("Couldn't synthesize event_types.\n");
632 return err; 633 return err;
@@ -641,9 +642,9 @@ static int __cmd_record(int argc, const char **argv)
641 * return this more properly and also 642 * return this more properly and also
642 * propagate errors that now are calling die() 643 * propagate errors that now are calling die()
643 */ 644 */
644 err = event__synthesize_tracing_data(output, evsel_list, 645 err = perf_event__synthesize_tracing_data(output, evsel_list,
645 process_synthesized_event, 646 process_synthesized_event,
646 session); 647 session);
647 if (err <= 0) { 648 if (err <= 0) {
648 pr_err("Couldn't record tracing data.\n"); 649 pr_err("Couldn't record tracing data.\n");
649 return err; 650 return err;
@@ -658,31 +659,34 @@ static int __cmd_record(int argc, const char **argv)
658 return -1; 659 return -1;
659 } 660 }
660 661
661 err = event__synthesize_kernel_mmap(process_synthesized_event, 662 err = perf_event__synthesize_kernel_mmap(process_synthesized_event,
662 session, machine, "_text"); 663 session, machine, "_text");
663 if (err < 0) 664 if (err < 0)
664 err = event__synthesize_kernel_mmap(process_synthesized_event, 665 err = perf_event__synthesize_kernel_mmap(process_synthesized_event,
665 session, machine, "_stext"); 666 session, machine, "_stext");
666 if (err < 0) 667 if (err < 0)
667 pr_err("Couldn't record kernel reference relocation symbol\n" 668 pr_err("Couldn't record kernel reference relocation symbol\n"
668 "Symbol resolution may be skewed if relocation was used (e.g. kexec).\n" 669 "Symbol resolution may be skewed if relocation was used (e.g. kexec).\n"
669 "Check /proc/kallsyms permission or run as root.\n"); 670 "Check /proc/kallsyms permission or run as root.\n");
670 671
671 err = event__synthesize_modules(process_synthesized_event, 672 err = perf_event__synthesize_modules(process_synthesized_event,
672 session, machine); 673 session, machine);
673 if (err < 0) 674 if (err < 0)
674 pr_err("Couldn't record kernel module information.\n" 675 pr_err("Couldn't record kernel module information.\n"
675 "Symbol resolution may be skewed if relocation was used (e.g. kexec).\n" 676 "Symbol resolution may be skewed if relocation was used (e.g. kexec).\n"
676 "Check /proc/modules permission or run as root.\n"); 677 "Check /proc/modules permission or run as root.\n");
677 678
678 if (perf_guest) 679 if (perf_guest)
679 perf_session__process_machines(session, event__synthesize_guest_os); 680 perf_session__process_machines(session,
681 perf_event__synthesize_guest_os);
680 682
681 if (!system_wide) 683 if (!system_wide)
682 event__synthesize_thread(target_tid, process_synthesized_event, 684 perf_event__synthesize_thread(target_tid,
683 session); 685 process_synthesized_event,
686 session);
684 else 687 else
685 event__synthesize_threads(process_synthesized_event, session); 688 perf_event__synthesize_threads(process_synthesized_event,
689 session);
686 690
687 if (realtime_prio) { 691 if (realtime_prio) {
688 struct sched_param param; 692 struct sched_param param;