From 754e5df789f19a23727e0bc64e22c8f2dcabab7b Mon Sep 17 00:00:00 2001 From: Christian Hergert Date: Mon, 22 May 2023 18:35:35 -0700 Subject: [PATCH] libsysprof: only record process from perf, not threads Otherwise we'll get additional SysprofCaptureProcess frames that relate to the threads instead of just the processes. --- src/libsysprof/sysprof-perf-source.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/src/libsysprof/sysprof-perf-source.c b/src/libsysprof/sysprof-perf-source.c index 8d669ed5..c8baa36d 100644 --- a/src/libsysprof/sysprof-perf-source.c +++ b/src/libsysprof/sysprof-perf-source.c @@ -318,11 +318,12 @@ sysprof_perf_source_handle_event (SysprofPerfCounterEvent *event, offset += sizeof (GPid) + sizeof (GPid); memcpy (&time, event->comm.comm + offset, sizeof time); - sysprof_capture_writer_add_process (self->writer, - time, - cpu, - event->comm.pid, - event->comm.comm); + if (event->comm.pid == event->comm.tid) + sysprof_capture_writer_add_process (self->writer, + time, + cpu, + event->comm.pid, + event->comm.comm); break;