|
@@ -879,6 +879,7 @@ static int perf_evsel__hists_browse(struct perf_evsel *evsel, int nr_events,
|
|
|
char *options[16];
|
|
|
int nr_options = 0;
|
|
|
int key = -1;
|
|
|
+ char buf[64];
|
|
|
|
|
|
if (browser == NULL)
|
|
|
return -1;
|
|
@@ -933,6 +934,16 @@ static int perf_evsel__hists_browse(struct perf_evsel *evsel, int nr_events,
|
|
|
goto zoom_dso;
|
|
|
case 't':
|
|
|
goto zoom_thread;
|
|
|
+ case 's':
|
|
|
+ if (ui_browser__input_window("Symbol to show",
|
|
|
+ "Please enter the name of symbol you want to see",
|
|
|
+ buf, "ENTER: OK, ESC: Cancel",
|
|
|
+ delay_secs * 2) == K_ENTER) {
|
|
|
+ self->symbol_filter_str = *buf ? buf : NULL;
|
|
|
+ hists__filter_by_symbol(self);
|
|
|
+ hist_browser__reset(browser);
|
|
|
+ }
|
|
|
+ continue;
|
|
|
case K_F1:
|
|
|
case 'h':
|
|
|
case '?':
|
|
@@ -950,7 +961,8 @@ static int perf_evsel__hists_browse(struct perf_evsel *evsel, int nr_events,
|
|
|
"C Collapse all callchains\n"
|
|
|
"E Expand all callchains\n"
|
|
|
"d Zoom into current DSO\n"
|
|
|
- "t Zoom into current Thread");
|
|
|
+ "t Zoom into current Thread\n"
|
|
|
+ "s Filter symbol by name");
|
|
|
continue;
|
|
|
case K_ENTER:
|
|
|
case K_RIGHT:
|