[v2,2/6] perf cs-etm: Bail out immediately for instruction sample failure

Message ID 1531295145-596-3-git-send-email-leo.yan@linaro.org
State New
Headers show
Series
  • perf cs-etm: Fix tracing packet handling and minor refactoring
Related show

Commit Message

Leo Yan July 11, 2018, 7:45 a.m.
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.

Reviewed-by: Mathieu Poirier <mathieu.poirier@linaro.org>

Signed-off-by: Leo Yan <leo.yan@linaro.org>

---
 tools/perf/util/cs-etm.c | 3 +++
 1 file changed, 3 insertions(+)

-- 
2.7.4

Patch

diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c
index 822ba91..8b2c099 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;
 
 		/*