Re: [PATCH 09/17] coresight: Clarify comments around the PID of the sink owner

From: Anshuman Khandual
Date: Tue May 07 2024 - 00:25:46 EST




On 4/29/24 20:51, James Clark wrote:
> "Process being monitored" and "pid of the process to monitor" imply that
> this would be the same PID if there were two sessions targeting the same
> process. But this is actually the PID of the process that did the Perf
> event open call, rather than the target of the session. So update the
> comments to make this clearer.
>
> Signed-off-by: James Clark <james.clark@xxxxxxx>

This indeed removes the ambiguity that the PID belongs to the perf session
owner rather than the monitored or target process.

Reviewed-by: Anshuman Khandual <anshuman.khandual@xxxxxxx>

> ---
> drivers/hwtracing/coresight/coresight-tmc-etr.c | 5 +++--
> drivers/hwtracing/coresight/coresight-tmc.h | 5 +++--
> 2 files changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/hwtracing/coresight/coresight-tmc-etr.c b/drivers/hwtracing/coresight/coresight-tmc-etr.c
> index e75428fa1592..8962fc27d04f 100644
> --- a/drivers/hwtracing/coresight/coresight-tmc-etr.c
> +++ b/drivers/hwtracing/coresight/coresight-tmc-etr.c
> @@ -36,7 +36,8 @@ struct etr_buf_hw {
> * etr_perf_buffer - Perf buffer used for ETR
> * @drvdata - The ETR drvdaga this buffer has been allocated for.
> * @etr_buf - Actual buffer used by the ETR
> - * @pid - The PID this etr_perf_buffer belongs to.
> + * @pid - The PID of the session owner that etr_perf_buffer
> + * belongs to.
> * @snaphost - Perf session mode
> * @nr_pages - Number of pages in the ring buffer.
> * @pages - Array of Pages in the ring buffer.
> @@ -1662,7 +1663,7 @@ static int tmc_enable_etr_sink_perf(struct coresight_device *csdev, void *data)
> goto unlock_out;
> }
>
> - /* Get a handle on the pid of the process to monitor */
> + /* Get a handle on the pid of the session owner */
> pid = etr_perf->pid;
>
> /* Do not proceed if this device is associated with another session */
> diff --git a/drivers/hwtracing/coresight/coresight-tmc.h b/drivers/hwtracing/coresight/coresight-tmc.h
> index c77763b49de0..2671926be62a 100644
> --- a/drivers/hwtracing/coresight/coresight-tmc.h
> +++ b/drivers/hwtracing/coresight/coresight-tmc.h
> @@ -171,8 +171,9 @@ struct etr_buf {
> * @csdev: component vitals needed by the framework.
> * @miscdev: specifics to handle "/dev/xyz.tmc" entry.
> * @spinlock: only one at a time pls.
> - * @pid: Process ID of the process being monitored by the session
> - * that is using this component.
> + * @pid: Process ID of the process that owns the session that is using
> + * this component. For example this would be the pid of the Perf
> + * process.
> * @buf: Snapshot of the trace data for ETF/ETB.
> * @etr_buf: details of buffer used in TMC-ETR
> * @len: size of the available trace for ETF/ETB.