Commit cb1955b86c86782ff20037da42ef030057501c34

Authored by Frederic Weisbecker
1 parent fd8ea21276

perf tools: Only display parent field if explictly sorted

We don't need to display the parent field if the parent
sorting machinery is only used for parent filtering
(as in "-p foo").

However if parent filtering is used in combination with
explicit parent sorting ( -s parent), we want to
display it.

Result with:

  perf report -p kernel_thread -s parent

Before:

 # Overhead  Parent symbol
 # ........  .............
 #
     0.07%
            |
            --- ioread8
                ata_sff_check_status
                ata_sff_tf_load
                ata_sff_qc_issue
                ata_bmdma_qc_issue
                ata_qc_issue
                ata_scsi_translate
                ata_scsi_queuecmd
                scsi_dispatch_cmd
                scsi_request_fn
                __blk_run_queue
                __make_request
                generic_make_request
                submit_bio
                submit_bh
                journal_submit_commit_record
                jbd2_journal_commit_transaction
                kjournald2
                kthread
                kernel_thread_helpe

After:

 # Overhead  Parent symbol
 # ........  .............
 #
     0.07%  kernel_thread_helper
            |
            --- ioread8
                ata_sff_check_status
                ata_sff_tf_load
                ata_sff_qc_issue
                ata_bmdma_qc_issue
                ata_qc_issue
                ata_scsi_translate
                ata_scsi_queuecmd
                scsi_dispatch_cmd
                scsi_request_fn
                __blk_run_queue
                __make_request
                generic_make_request
                submit_bio
                submit_bh
                journal_submit_commit_record
                jbd2_journal_commit_transaction
                kjournald2
                kthread
                kernel_thread_helper

Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Stephane Eranian <eranian@google.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Sam Liao <phyomh@gmail.com>

Showing 1 changed file with 8 additions and 1 deletions Side-by-side Diff

tools/perf/builtin-report.c
... ... @@ -525,7 +525,14 @@
525 525 if (parent_pattern != default_parent_pattern) {
526 526 if (sort_dimension__add("parent") < 0)
527 527 return -1;
528   - sort_parent.elide = 1;
  528 +
  529 + /*
  530 + * Only show the parent fields if we explicitly
  531 + * sort that way. If we only use parent machinery
  532 + * for filtering, we don't want it.
  533 + */
  534 + if (!strstr(sort_order, "parent"))
  535 + sort_parent.elide = 1;
529 536 } else
530 537 symbol_conf.exclude_other = false;
531 538