diff options
| author | Chris Metcalf <cmetcalf@tilera.com> | 2010-08-13 19:59:15 -0400 |
|---|---|---|
| committer | Chris Metcalf <cmetcalf@tilera.com> | 2010-08-13 19:59:15 -0400 |
| commit | 7d72e6fa56c4100b9669efe0044f77ed9eb785a1 (patch) | |
| tree | 5e90bf4969809a1ab20b97432b85be20ccfaa1f4 /tools/perf/builtin-report.c | |
| parent | ba00376b0b13f234d839541a7b36a5bf5c2a4036 (diff) | |
| parent | 2be1f3a73dd02e38e181cf5abacb3d45a6a2d6b8 (diff) | |
Merge branch 'master' into for-linus
Diffstat (limited to 'tools/perf/builtin-report.c')
| -rw-r--r-- | tools/perf/builtin-report.c | 31 |
1 files changed, 29 insertions, 2 deletions
diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c index 2f4b92925b26..55fc1f46892a 100644 --- a/tools/perf/builtin-report.c +++ b/tools/perf/builtin-report.c | |||
| @@ -348,7 +348,18 @@ static int __cmd_report(void) | |||
| 348 | hists__tty_browse_tree(&session->hists_tree, help); | 348 | hists__tty_browse_tree(&session->hists_tree, help); |
| 349 | 349 | ||
| 350 | out_delete: | 350 | out_delete: |
| 351 | perf_session__delete(session); | 351 | /* |
| 352 | * Speed up the exit process, for large files this can | ||
| 353 | * take quite a while. | ||
| 354 | * | ||
| 355 | * XXX Enable this when using valgrind or if we ever | ||
| 356 | * librarize this command. | ||
| 357 | * | ||
| 358 | * Also experiment with obstacks to see how much speed | ||
| 359 | * up we'll get here. | ||
| 360 | * | ||
| 361 | * perf_session__delete(session); | ||
| 362 | */ | ||
| 352 | return ret; | 363 | return ret; |
| 353 | } | 364 | } |
| 354 | 365 | ||
| @@ -478,8 +489,24 @@ int cmd_report(int argc, const char **argv, const char *prefix __used) | |||
| 478 | * so don't allocate extra space that won't be used in the stdio | 489 | * so don't allocate extra space that won't be used in the stdio |
| 479 | * implementation. | 490 | * implementation. |
| 480 | */ | 491 | */ |
| 481 | if (use_browser > 0) | 492 | if (use_browser > 0) { |
| 482 | symbol_conf.priv_size = sizeof(struct sym_priv); | 493 | symbol_conf.priv_size = sizeof(struct sym_priv); |
| 494 | /* | ||
| 495 | * For searching by name on the "Browse map details". | ||
| 496 | * providing it only in verbose mode not to bloat too | ||
| 497 | * much struct symbol. | ||
| 498 | */ | ||
| 499 | if (verbose) { | ||
| 500 | /* | ||
| 501 | * XXX: Need to provide a less kludgy way to ask for | ||
| 502 | * more space per symbol, the u32 is for the index on | ||
| 503 | * the ui browser. | ||
| 504 | * See symbol__browser_index. | ||
| 505 | */ | ||
| 506 | symbol_conf.priv_size += sizeof(u32); | ||
| 507 | symbol_conf.sort_by_name = true; | ||
| 508 | } | ||
| 509 | } | ||
| 483 | 510 | ||
| 484 | if (symbol__init() < 0) | 511 | if (symbol__init() < 0) |
| 485 | return -1; | 512 | return -1; |
