Re: [PATCH] coresight: Fix data argument to coresight_enable_helpers

From: Suzuki K Poulose

Date: Fri Sep 19 2025 - 03:43:59 EST


On 19/09/2025 02:20, Jie Gan wrote:


On 9/19/2025 6:18 AM, Carl Worth wrote:
Jie Gan <jie.gan@xxxxxxxxxxxxxxxx> writes:
I dont think we can change back to sink_data since we introduced
coresight_path to wrap 'data' which is needed by the path.

I suggest you to add the struct perf_output_handle to the
coresight_path, then retrieving it with data->perf_handle in
tmc_etr_get_buffer.
...
We can assign the perf_output_handle to the coresight_path after we
constructed the coresight_path in perf mode.

Thanks. That much makes sense to me, and I'll put together a patch along
those lines.

But, further: with core coresight code assembling into the path all the
data that is necessary, is there any reason to be using void* in these
enable/disable functions?

In my opinion, yes, we can change void * to coresight_path * for helper's enable/disable functions since we have everything in path so the cast is not necessary now.


Could we also change these functions to accept a coresight_path* and
actually get some compiler help at finding mistakes like the one we're
fixing here?



Yes, please. I was going to suggest that. May be we could do that as
a separate patch after fixing the problem here first (so that it
can be back ported).

This was initially a perf_handle only used for the perf mode, and
it didn't make sens to have a "perf" argument to "enable" which
could be used for both sysfs and perf. Now that the path
is a generic data structure, it makes sense to move everything
to accept the path.

Suzuki


That's the only benefit in my mind so far.

Thanks,
Jie


-Carl