Function cs_etm__sample() is called only from cs_etm__run_decoder() where cs_etm_queue::have_sample is set to 'true'. As such checking the value of the variable again in cs_etm__sample() is not needed.
Since the variable isn't used anywhere else, also removing it from the structure definition.
Signed-off-by: Mathieu Poirier mathieu.poirier@linaro.org --- tools/perf/util/cs-etm.c | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-)
diff --git a/tools/perf/util/cs-etm.c b/tools/perf/util/cs-etm.c index 1c37ca808398..1194e8a34a21 100644 --- a/tools/perf/util/cs-etm.c +++ b/tools/perf/util/cs-etm.c @@ -83,7 +83,6 @@ struct cs_etm_queue { u64 time; u64 timestamp; bool stop; - bool have_sample; struct cs_etm_decoder *decoder; u64 offset; bool eot; @@ -798,11 +797,6 @@ static int cs_etm__sample(struct cs_etm_queue *etmq) //struct cs_etm_auxtrace *etm = etmq->etm; int err;
- if (!etmq->have_sample) - return 0; - - etmq->have_sample = false; - err = cs_etm_decoder__get_packet(etmq->decoder,&packet); // if there is no sample, it returns err = -1, no real error
@@ -838,10 +832,8 @@ more: err = etmq->state->err; etmq->offset += processed; buffer_used += processed; - if (!err) { - etmq->have_sample = true; + if (!err) cs_etm__sample(etmq); - } } while (!etmq->eot && (buffer.len > buffer_used)); goto more;