diff options
author | Ian Rogers <irogers@google.com> | 2024-02-29 21:36:40 -0800 |
---|---|---|
committer | Namhyung Kim <namhyung@kernel.org> | 2024-03-03 22:51:18 -0800 |
commit | f178ffdf7ee5bf809837161002719e19eebff895 (patch) | |
tree | e4b0354890476358153cfea5225a9bc9f73622c9 /tools/perf/util | |
parent | 2f1e20feb9944d0dd50906819227e99e1a26f78c (diff) |
perf trace: Ignore thread hashing in summary
Commit 91e467bc568f ("perf machine: Use hashtable for machine
threads") made the iteration of thread tids unordered. The perf trace
--summary output sorts and prints each hash bucket, rather than all
threads globally. Change this behavior by turn all threads into a
list, sort the list by number of trace events then by tids, finally
print the list. This also allows the rbtree in threads to be not
accessed outside of machine.
Signed-off-by: Ian Rogers <irogers@google.com>
Acked-by: Namhyung Kim <namhyung@kernel.org>
Cc: Yang Jihong <yangjihong1@huawei.com>
Cc: Oliver Upton <oliver.upton@linux.dev>
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Link: https://lore.kernel.org/r/20240301053646.1449657-3-irogers@google.com
Diffstat (limited to 'tools/perf/util')
-rw-r--r-- | tools/perf/util/rb_resort.h | 5 |
1 files changed, 0 insertions, 5 deletions
diff --git a/tools/perf/util/rb_resort.h b/tools/perf/util/rb_resort.h index 376e86cb4c3c..d927a0d25052 100644 --- a/tools/perf/util/rb_resort.h +++ b/tools/perf/util/rb_resort.h @@ -143,9 +143,4 @@ struct __name##_sorted *__name = __name##_sorted__new DECLARE_RESORT_RB(__name)(&__ilist->rblist.entries.rb_root, \ __ilist->rblist.nr_entries) -/* For 'struct machine->threads' */ -#define DECLARE_RESORT_RB_MACHINE_THREADS(__name, __machine, hash_bucket) \ - DECLARE_RESORT_RB(__name)(&__machine->threads[hash_bucket].entries.rb_root, \ - __machine->threads[hash_bucket].nr) - #endif /* _PERF_RESORT_RB_H_ */ |