提交 fa82911a 编写于 作者: J Jiri Olsa 提交者: Arnaldo Carvalho de Melo

perf hists: Move sort__has_thread into struct perf_hpp_list

Now we have sort dimensions private for struct hists, we need to make
dimension booleans hists specific as well.

Moving sort__has_thread into struct perf_hpp_list.
Signed-off-by: NJiri Olsa <jolsa@kernel.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/1462276488-26683-7-git-send-email-jolsa@kernel.orgSigned-off-by: NArnaldo Carvalho de Melo <acme@redhat.com>
上级 35a634f7
...@@ -2135,7 +2135,7 @@ static int hists__browser_title(struct hists *hists, ...@@ -2135,7 +2135,7 @@ static int hists__browser_title(struct hists *hists,
printed += snprintf(bf + printed, size - printed, printed += snprintf(bf + printed, size - printed,
", UID: %s", hists->uid_filter_str); ", UID: %s", hists->uid_filter_str);
if (thread) { if (thread) {
if (sort__has_thread) { if (hists__has(hists, thread)) {
printed += scnprintf(bf + printed, size - printed, printed += scnprintf(bf + printed, size - printed,
", Thread: %s(%d)", ", Thread: %s(%d)",
(thread->comm_set ? thread__comm_str(thread) : ""), (thread->comm_set ? thread__comm_str(thread) : ""),
...@@ -2320,7 +2320,7 @@ do_zoom_thread(struct hist_browser *browser, struct popup_action *act) ...@@ -2320,7 +2320,7 @@ do_zoom_thread(struct hist_browser *browser, struct popup_action *act)
{ {
struct thread *thread = act->thread; struct thread *thread = act->thread;
if ((!sort__has_thread && !sort__has_comm) || thread == NULL) if ((!hists__has(browser->hists, thread) && !sort__has_comm) || thread == NULL)
return 0; return 0;
if (browser->hists->thread_filter) { if (browser->hists->thread_filter) {
...@@ -2329,7 +2329,7 @@ do_zoom_thread(struct hist_browser *browser, struct popup_action *act) ...@@ -2329,7 +2329,7 @@ do_zoom_thread(struct hist_browser *browser, struct popup_action *act)
thread__zput(browser->hists->thread_filter); thread__zput(browser->hists->thread_filter);
ui_helpline__pop(); ui_helpline__pop();
} else { } else {
if (sort__has_thread) { if (hists__has(browser->hists, thread)) {
ui_helpline__fpush("To zoom out press ESC or ENTER + \"Zoom out of %s(%d) thread\"", ui_helpline__fpush("To zoom out press ESC or ENTER + \"Zoom out of %s(%d) thread\"",
thread->comm_set ? thread__comm_str(thread) : "", thread->comm_set ? thread__comm_str(thread) : "",
thread->tid); thread->tid);
...@@ -2354,10 +2354,10 @@ add_thread_opt(struct hist_browser *browser, struct popup_action *act, ...@@ -2354,10 +2354,10 @@ add_thread_opt(struct hist_browser *browser, struct popup_action *act,
{ {
int ret; int ret;
if ((!sort__has_thread && !sort__has_comm) || thread == NULL) if ((!hists__has(browser->hists, thread) && !sort__has_comm) || thread == NULL)
return 0; return 0;
if (sort__has_thread) { if (hists__has(browser->hists, thread)) {
ret = asprintf(optstr, "Zoom %s %s(%d) thread", ret = asprintf(optstr, "Zoom %s %s(%d) thread",
browser->hists->thread_filter ? "out of" : "into", browser->hists->thread_filter ? "out of" : "into",
thread->comm_set ? thread__comm_str(thread) : "", thread->comm_set ? thread__comm_str(thread) : "",
...@@ -2954,7 +2954,7 @@ static int perf_evsel__hists_browse(struct perf_evsel *evsel, int nr_events, ...@@ -2954,7 +2954,7 @@ static int perf_evsel__hists_browse(struct perf_evsel *evsel, int nr_events,
goto skip_scripting; goto skip_scripting;
if (browser->he_selection) { if (browser->he_selection) {
if (sort__has_thread && thread) { if (hists__has(hists, thread) && thread) {
nr_options += add_script_opt(browser, nr_options += add_script_opt(browser,
&actions[nr_options], &actions[nr_options],
&options[nr_options], &options[nr_options],
......
...@@ -246,6 +246,7 @@ struct perf_hpp_list { ...@@ -246,6 +246,7 @@ struct perf_hpp_list {
int sym; int sym;
int dso; int dso;
int socket; int socket;
int thread;
}; };
extern struct perf_hpp_list perf_hpp_list; extern struct perf_hpp_list perf_hpp_list;
......
...@@ -21,7 +21,6 @@ const char *sort_order; ...@@ -21,7 +21,6 @@ const char *sort_order;
const char *field_order; const char *field_order;
regex_t ignore_callees_regex; regex_t ignore_callees_regex;
int have_ignore_callees = 0; int have_ignore_callees = 0;
int sort__has_thread = 0;
int sort__has_comm = 0; int sort__has_comm = 0;
enum sort_mode sort__mode = SORT_MODE__NORMAL; enum sort_mode sort__mode = SORT_MODE__NORMAL;
...@@ -2257,7 +2256,7 @@ static int sort_dimension__add(struct perf_hpp_list *list, const char *tok, ...@@ -2257,7 +2256,7 @@ static int sort_dimension__add(struct perf_hpp_list *list, const char *tok,
} else if (sd->entry == &sort_socket) { } else if (sd->entry == &sort_socket) {
list->socket = 1; list->socket = 1;
} else if (sd->entry == &sort_thread) { } else if (sd->entry == &sort_thread) {
sort__has_thread = 1; list->thread = 1;
} else if (sd->entry == &sort_comm) { } else if (sd->entry == &sort_comm) {
sort__has_comm = 1; sort__has_comm = 1;
} }
......
...@@ -31,7 +31,6 @@ extern const char *parent_pattern; ...@@ -31,7 +31,6 @@ extern const char *parent_pattern;
extern const char default_sort_order[]; extern const char default_sort_order[];
extern regex_t ignore_callees_regex; extern regex_t ignore_callees_regex;
extern int have_ignore_callees; extern int have_ignore_callees;
extern int sort__has_thread;
extern int sort__has_comm; extern int sort__has_comm;
extern enum sort_mode sort__mode; extern enum sort_mode sort__mode;
extern struct sort_entry sort_comm; extern struct sort_entry sort_comm;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册