UPSTREAM: coresight: trbe: Fix incorrect access of the sink specific data
The TRBE driver wrongly treats the aux private data as the TRBE driver specific buffer for a given perf handle, while it is the ETM PMU's event specific data. Fix this by correcting the instance to use appropriate helper. Cc: stable <stable@vger.kernel.org> Fixes: 3fbf7f011f24 ("coresight: sink: Add TRBE driver") Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com> Reviewed-by: Anshuman Khandual <anshuman.khandual@arm.com> Link: https://lore.kernel.org/r/20210921134121.2423546-2-suzuki.poulose@arm.com [Fixed 13 character SHA down to 12] Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org> (cherry picked from commit bb5293e334af51b19b62d8bef1852ea13e935e9b) Bug: 187129171 Signed-off-by: Connor O'Brien <connoro@google.com> Change-Id: I89c85772a67c868dd69144a8d56867e7abf5fc23
This commit is contained in:

committed by
Connor O'Brien

parent
de27f42b19
commit
986262ed83
@@ -366,7 +366,7 @@ static unsigned long __trbe_normal_offset(struct perf_output_handle *handle)
|
|||||||
|
|
||||||
static unsigned long trbe_normal_offset(struct perf_output_handle *handle)
|
static unsigned long trbe_normal_offset(struct perf_output_handle *handle)
|
||||||
{
|
{
|
||||||
struct trbe_buf *buf = perf_get_aux(handle);
|
struct trbe_buf *buf = etm_perf_sink_config(handle);
|
||||||
u64 limit = __trbe_normal_offset(handle);
|
u64 limit = __trbe_normal_offset(handle);
|
||||||
u64 head = PERF_IDX2OFF(handle->head, buf);
|
u64 head = PERF_IDX2OFF(handle->head, buf);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user