Re: [PATCH v2 09/15] perf record: introduce thread specific objects for trace streaming

Jiri Olsa
2020-10-24T15:44:44Z

On Wed, Oct 21, 2020 at 07:03:48PM +0300, Alexey Budankov wrote:
>
> Introduce thread local data object and its array to be used for
> threaded trace streaming.
>
> Signed-off-by: Alexey Budankov <alexey.budankov@linux.intel.com>
> ---
> tools/perf/builtin-record.c | 18 ++++++++++++++++++
> 1 file changed, 18 insertions(+)
>
> diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c
> index ba26d75c51d6..8e512096a060 100644
> --- a/tools/perf/builtin-record.c
> +++ b/tools/perf/builtin-record.c
> @@ -85,11 +85,29 @@ struct switch_output {
> int cur_file;
> };
>
> +struct thread_data {
> + pid_t tid;
> + struct {
> + int msg[2];
> + int ack[2];
> + } comm;
> + struct fdarray pollfd;
> + int ctlfd_pos;
> + struct mmap *maps;
> + int nr_mmaps;
> + struct record *rec;
> + unsigned long long samples;
> + unsigned long waking;
> + u64 bytes_written;
> +};

please merge the struct with the code that's using it

jirka

> +
> struct record {
> struct perf_tool tool;
> struct record_opts opts;
> u64 bytes_written;
> struct perf_data data;
> + struct thread_data *thread_data;
> + int nr_thread_data;
> struct auxtrace_record *itr;
> struct evlist *evlist;
> struct perf_session *session;
> --
> 2.24.1
>