Commit-ID:  6cd4ac6a02c9bc6560faf567ac013902ab9cd039
Gitweb:     https://git.kernel.org/tip/6cd4ac6a02c9bc6560faf567ac013902ab9cd039
Author:     Leo Yan <leo....@linaro.org>
AuthorDate: Mon, 18 Jun 2018 13:09:55 +0800
Committer:  Arnaldo Carvalho de Melo <a...@redhat.com>
CommitDate: Tue, 24 Jul 2018 14:48:32 -0300

perf cs-etm: Bail out immediately for instruction sample failure

If the instruction sample failure has happened, it isn't necessary to
execute to the end of the function cs_etm__flush().  This commit is to
bail out immediately and return the error code.

Signed-off-by: Leo Yan <leo....@linaro.org>
Reviewed-by: Mathieu Poirier <mathieu.poir...@linaro.org>
Cc: Alexander Shishkin <alexander.shish...@linux.intel.com>
Cc: Jiri Olsa <jo...@redhat.com>
Cc: Kim Phillips <kim.phill...@arm.com>
Cc: Mike Leach <mike.le...@linaro.org>
Cc: Namhyung Kim <namhy...@kernel.org>
Cc: Peter Zijlstra <pet...@infradead.org>
Cc: Robert Walker <robert.wal...@arm.com>
Cc: linux-arm-ker...@lists.infradead.org
Link: 
http://lkml.kernel.org/r/1529298599-3876-3-git-send-email-leo....@linaro.org
Signed-off-by: Arnaldo Carvalho de Melo <a...@redhat.com>
---
 tools/perf/util/cs-etm.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c
index 822ba915d144..8b2c099e750a 100644
--- a/tools/perf/util/cs-etm.c
+++ b/tools/perf/util/cs-etm.c
@@ -939,6 +939,9 @@ static int cs_etm__flush(struct cs_etm_queue *etmq)
                err = cs_etm__synth_instruction_sample(
                        etmq, addr,
                        etmq->period_instructions);
+               if (err)
+                       return err;
+
                etmq->period_instructions = 0;
 
                /*

Reply via email to