perf ui browser hists: Set actions->thread before calling do_zoom_thread()
[ Upstream commit 1741189d843a1d5ef38538bc52a3760e2e46cb2e ] In7cecb7fe83
("perf hists: Move sort__has_comm into struct perf_hpp_list") it assumes that act->thread is set prior to calling do_zoom_thread(). This doesn't happen when we use ESC or the Left arrow key to Zoom out of a specific thread, making this operation not to work and we get stuck into the thread zoom. In6422184b08
("perf hists browser: Simplify zooming code using pstack_peek()") it says no need to set actions->thread, and at that point that was true, but in7cecb7fe83
a actions->thread == NULL check was added before the zoom out of thread could kick in. We can zoom out using the alternative 't' thread zoom toggle hotkey to finally set actions->thread before calling do_zoom_thread() and zoom out, but lets also fix the ESC/Zoom out of thread case. Fixes:7cecb7fe83
("perf hists: Move sort__has_comm into struct perf_hpp_list") Reported-by: Ingo Molnar <mingo@kernel.org> Tested-by: Ingo Molnar <mingo@kernel.org> Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: Ian Rogers <irogers@google.com> Cc: James Clark <james.clark@linaro.org> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Kan Liang <kan.liang@linux.intel.com> Cc: Namhyung Kim <namhyung@kernel.org> Link: https://lore.kernel.org/r/Z_TYux5fUg2pW-pF@gmail.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
34e124dc21
commit
e431cc956d
@@ -3239,10 +3239,10 @@ do_hotkey: // key came straight from options ui__popup_menu()
|
|||||||
/*
|
/*
|
||||||
* No need to set actions->dso here since
|
* No need to set actions->dso here since
|
||||||
* it's just to remove the current filter.
|
* it's just to remove the current filter.
|
||||||
* Ditto for thread below.
|
|
||||||
*/
|
*/
|
||||||
do_zoom_dso(browser, actions);
|
do_zoom_dso(browser, actions);
|
||||||
} else if (top == &browser->hists->thread_filter) {
|
} else if (top == &browser->hists->thread_filter) {
|
||||||
|
actions->thread = thread;
|
||||||
do_zoom_thread(browser, actions);
|
do_zoom_thread(browser, actions);
|
||||||
} else if (top == &browser->hists->socket_filter) {
|
} else if (top == &browser->hists->socket_filter) {
|
||||||
do_zoom_socket(browser, actions);
|
do_zoom_socket(browser, actions);
|
||||||
|
Reference in New Issue
Block a user