mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-07-23 07:12:09 +00:00
perf hists browser: Pass annotation_options from tool to browser
So that things changed in the command line may percolate to the browser code without using globals. Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: David Ahern <dsahern@gmail.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Wang Nan <wangnan0@huawei.com> Link: https://lkml.kernel.org/n/tip-5daawc40zhl6gcs600com1ua@git.kernel.org [ Merged fix for NO_SLANG=1 build provided by Jiri Olsa ] Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
a47e843edc
commit
cd0cccbae9
8 changed files with 57 additions and 28 deletions
|
@ -29,6 +29,7 @@ struct annotate_browser {
|
|||
struct rb_node *curr_hot;
|
||||
struct annotation_line *selection;
|
||||
struct arch *arch;
|
||||
struct annotation_options *opts;
|
||||
bool searching_backwards;
|
||||
char search_bf[128];
|
||||
};
|
||||
|
@ -418,7 +419,7 @@ static bool annotate_browser__callq(struct annotate_browser *browser,
|
|||
}
|
||||
|
||||
pthread_mutex_unlock(¬es->lock);
|
||||
symbol__tui_annotate(dl->ops.target.sym, ms->map, evsel, hbt);
|
||||
symbol__tui_annotate(dl->ops.target.sym, ms->map, evsel, hbt, browser->opts);
|
||||
sym_title(ms->sym, ms->map, title, sizeof(title));
|
||||
ui_browser__show_title(&browser->b, title);
|
||||
return true;
|
||||
|
@ -817,24 +818,27 @@ out:
|
|||
}
|
||||
|
||||
int map_symbol__tui_annotate(struct map_symbol *ms, struct perf_evsel *evsel,
|
||||
struct hist_browser_timer *hbt)
|
||||
struct hist_browser_timer *hbt,
|
||||
struct annotation_options *opts)
|
||||
{
|
||||
return symbol__tui_annotate(ms->sym, ms->map, evsel, hbt);
|
||||
return symbol__tui_annotate(ms->sym, ms->map, evsel, hbt, opts);
|
||||
}
|
||||
|
||||
int hist_entry__tui_annotate(struct hist_entry *he, struct perf_evsel *evsel,
|
||||
struct hist_browser_timer *hbt)
|
||||
struct hist_browser_timer *hbt,
|
||||
struct annotation_options *opts)
|
||||
{
|
||||
/* reset abort key so that it can get Ctrl-C as a key */
|
||||
SLang_reset_tty();
|
||||
SLang_init_tty(0, 0, 0);
|
||||
|
||||
return map_symbol__tui_annotate(&he->ms, evsel, hbt);
|
||||
return map_symbol__tui_annotate(&he->ms, evsel, hbt, opts);
|
||||
}
|
||||
|
||||
int symbol__tui_annotate(struct symbol *sym, struct map *map,
|
||||
struct perf_evsel *evsel,
|
||||
struct hist_browser_timer *hbt)
|
||||
struct hist_browser_timer *hbt,
|
||||
struct annotation_options *opts)
|
||||
{
|
||||
struct annotation *notes = symbol__annotation(sym);
|
||||
struct map_symbol ms = {
|
||||
|
@ -851,6 +855,7 @@ int symbol__tui_annotate(struct symbol *sym, struct map *map,
|
|||
.priv = &ms,
|
||||
.use_navkeypressed = true,
|
||||
},
|
||||
.opts = opts,
|
||||
};
|
||||
int ret = -1, err;
|
||||
|
||||
|
@ -860,7 +865,7 @@ int symbol__tui_annotate(struct symbol *sym, struct map *map,
|
|||
if (map->dso->annotate_warned)
|
||||
return -1;
|
||||
|
||||
err = symbol__annotate2(sym, map, evsel, &annotation__default_options, &browser.arch);
|
||||
err = symbol__annotate2(sym, map, evsel, opts, &browser.arch);
|
||||
if (err) {
|
||||
char msg[BUFSIZ];
|
||||
symbol__strerror_disassemble(sym, map, err, msg, sizeof(msg));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue