android_kernel_samsung_msm8976/tools/perf/ui
Jin Yao 2d2c883de1 perf annotate: Fix broken arrow at row 0 connecting jmp instruction to its target
commit 80f62589fa52f530cffc50e78c0b5a2ae572d61e upstream.

When the jump instruction is displayed at the row 0 in annotate view,
the arrow is broken. An example:

 16.86 │   ┌──je     82
  0.01 │      movsd  (%rsp),%xmm0
       │      movsd  0x8(%rsp),%xmm4
       │      movsd  0x8(%rsp),%xmm1
       │      movsd  (%rsp),%xmm3
       │      divsd  %xmm4,%xmm0
       │      divsd  %xmm3,%xmm1
       │      movsd  (%rsp),%xmm2
       │      addsd  %xmm1,%xmm0
       │      addsd  %xmm2,%xmm0
       │      movsd  %xmm0,(%rsp)
       │82:   sub    $0x1,%ebx
 83.03 │    ↑ jne    38
       │      add    $0x10,%rsp
       │      xor    %eax,%eax
       │      pop    %rbx
       │    ← retq

The patch increments the row number before checking with 0.

Signed-off-by: Yao Jin <yao.jin@linux.intel.com>
Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Kan Liang <kan.liang@intel.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: stable@vger.kernel.org
Fixes: 944e1abed9 ("perf ui browser: Add method to draw up/down arrow line")
Link: http://lkml.kernel.org/r/1496901704-30275-1-git-send-email-yao.jin@linux.intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Willy Tarreau <w@1wt.eu>
2019-07-27 21:44:39 +02:00
..
browsers perf map browser: Exit just on well known key presses 2013-04-01 12:23:55 -03:00
gtk perf annotate/gtk: Support event group view on GTK 2013-03-15 13:06:07 -03:00
stdio perf ui/hist: Add support for event group view 2013-01-31 13:07:46 -03:00
tui perf tools: Remove dependency on libnewt 2013-04-01 12:23:21 -03:00
browser.c perf annotate: Fix broken arrow at row 0 connecting jmp instruction to its target 2019-07-27 21:44:39 +02:00
browser.h perf tools: Remove dependency on libnewt 2013-04-01 12:23:21 -03:00
helpline.c perf ui/helpline: Introduce ui_helpline__vshow() 2012-12-09 08:46:04 -03:00
helpline.h perf ui/helpline: Introduce ui_helpline__vshow() 2012-12-09 08:46:04 -03:00
hist.c perf tools: Remove cast of non-variadic function to variadic 2013-12-04 10:55:49 -08:00
keysyms.h perf hists browser: Add option for runtime switching perf data file 2013-02-06 18:09:24 -03:00
libslang.h
progress.c perf ui: Add ui_progress__finish() 2012-11-14 16:52:56 -03:00
progress.h perf ui: Add ui_progress__finish() 2012-11-14 16:52:56 -03:00
setup.c perf ui/gtk: Implement basic GTK2 annotation browser 2013-02-14 14:59:27 -03:00
ui.h perf tools: Remove dependency on libnewt 2013-04-01 12:23:21 -03:00
util.c perf evsel: Introduce perf_evsel__open_strerror method 2013-01-24 16:40:09 -03:00
util.h perf ui: Introduce struct perf_error_ops 2012-06-19 13:06:18 -03:00