On Wed, Mar 06, 2019 at 03:59:33PM -0700, Mathieu Poirier wrote:
[...]
+static struct cs_etm_traceid_queue +*cs_etm__etmq_get_traceid_queue(struct cs_etm_queue *etmq, u8 trace_chan_id) +{
- struct cs_etm_traceid_queue *tidq;
- struct cs_etm_auxtrace *etm = etmq->etm;
- if (!etm->timeless_decoding)
return NULL;
Should be as below:
if (etm->timeless_decoding) return NULL;
- tidq = etmq->traceid_queues;
- if (tidq)
return tidq;
- tidq = calloc(CS_ETM_PACKET_QUEUE_NR, sizeof(*tidq));
- if (!tidq)
return NULL;
- if (cs_etm__init_traceid_queue(etmq, tidq, trace_chan_id))
goto out_free;
- etmq->traceid_queues = tidq;
- return etmq->traceid_queues;
+out_free:
- free(tidq);
- return NULL;
+}
[...]