mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-11 13:27:06 +09:00
UPSTREAM: coresight: tmc-etr: Introduce the notion of process ID to ETR devices
(Upstream commit ef848e463a).
In preparation to support CPU-wide trace scenarios, introduce the notion
of process ID to ETR devices. That way events monitoring the same process
can use the same etr_buf, allowing multiple CPUs to use the same sink.
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
Tested-by: Leo Yan <leo.yan@linaro.org>
Tested-by: Robert Walker <robert.walker@arm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Bug: 140266694
Change-Id: Ifed721da1237126c7196ccfd25477aa843bb8760
Signed-off-by: Yabin Cui <yabinc@google.com>
This commit is contained in:
committed by
Yabin Cui
parent
d8b599598b
commit
55df09d490
@@ -9,6 +9,7 @@
|
||||
#include <linux/dma-mapping.h>
|
||||
#include <linux/iommu.h>
|
||||
#include <linux/slab.h>
|
||||
#include <linux/types.h>
|
||||
#include <linux/vmalloc.h>
|
||||
#include "coresight-catu.h"
|
||||
#include "coresight-etm-perf.h"
|
||||
@@ -25,6 +26,7 @@ struct etr_flat_buf {
|
||||
/*
|
||||
* etr_perf_buffer - Perf buffer used for ETR
|
||||
* @etr_buf - Actual buffer used by the ETR
|
||||
* @pid - The PID this etr_perf_buffer belongs to.
|
||||
* @snaphost - Perf session mode
|
||||
* @head - handle->head at the beginning of the session.
|
||||
* @nr_pages - Number of pages in the ring buffer.
|
||||
@@ -32,6 +34,7 @@ struct etr_flat_buf {
|
||||
*/
|
||||
struct etr_perf_buffer {
|
||||
struct etr_buf *etr_buf;
|
||||
pid_t pid;
|
||||
bool snapshot;
|
||||
unsigned long head;
|
||||
int nr_pages;
|
||||
@@ -1277,6 +1280,7 @@ static void *tmc_alloc_etr_buffer(struct coresight_device *csdev,
|
||||
return NULL;
|
||||
}
|
||||
|
||||
etr_perf->pid = task_pid_nr(event->owner);
|
||||
etr_perf->snapshot = snapshot;
|
||||
etr_perf->nr_pages = nr_pages;
|
||||
etr_perf->pages = pages;
|
||||
|
||||
Reference in New Issue
Block a user