linux/tools/perf
Ian Rogers 7b2450bb40 perf dsos: When adding a dso into sorted dsos maintain the sort order
dsos__add would add at the end of the dso array possibly requiring a
later find to re-sort the array. Patterns of find then add were
becoming O(n*log n) due to the sorts. Change the add routine to be
O(n) rather than O(1) but to maintain the sorted-ness of the dsos
array so that later finds don't need the O(n*log n) sort.

Fixes: 3f4ac23a99 ("perf dsos: Switch backing storage to array from rbtree/list")
Reported-by: Namhyung Kim <namhyung@kernel.org>
Signed-off-by: Ian Rogers <irogers@google.com>
Cc: Steinar Gunderson <sesse@google.com>
Cc: Athira Rajeev <atrajeev@linux.vnet.ibm.com>
Cc: Matt Fleming <matt@readmodwrite.com>
Link: https://lore.kernel.org/r/20240703172117.810918-3-irogers@google.com
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
2024-07-07 22:26:29 -07:00
..
Documentation perf sched: Rename 'switches' column header to 'count' and add usage description, options for latency 2024-05-10 11:10:03 -03:00
arch tools headers: Update the syscall tables and unistd.h, mostly to support the new 'mseal' syscall 2024-05-28 11:10:00 -03:00
bench perf bench internals inject-build-id: Fix trap divide when collecting just one DSO 2024-05-07 12:44:02 -03:00
dlfilters
include/perf
jvmti
pmu-events perf vendor events amd: Add Zen 5 mapping 2024-05-04 15:10:07 -03:00
python
scripts
tests perf parse: Allow tracepoint names to start with digits 2024-05-10 10:50:34 -03:00
trace perf trace beauty: Update the arch/x86/include/asm/irq_vectors.h copy with the kernel sources to pick POSTED_MSI_NOTIFICATION 2024-05-27 13:42:18 -03:00
ui perf ui browser: Avoid SEGV on title 2024-05-09 18:12:47 -03:00
util perf dsos: When adding a dso into sorted dsos maintain the sort order 2024-07-07 22:26:29 -07:00
.gitignore
Build
CREDITS
MANIFEST
Makefile
Makefile.config perf build: Pretend scandirat is missing with msan 2024-04-26 22:13:10 -03:00
Makefile.perf perf bpf: Fix handling of minimal vmlinux.h file when interrupting the build 2024-06-05 11:33:00 -03:00
builtin-annotate.c perf dso: Add reference count checking and accessor functions 2024-05-06 15:28:49 -03:00
builtin-bench.c
builtin-buildid-cache.c perf dso: Add reference count checking and accessor functions 2024-05-06 15:28:49 -03:00
builtin-buildid-list.c perf dso: Add reference count checking and accessor functions 2024-05-06 15:28:49 -03:00
builtin-c2c.c perf mem-info: Add reference count checking 2024-05-07 18:06:44 -03:00
builtin-config.c
builtin-daemon.c perf daemon: Fix file leak in daemon_session__control 2024-05-10 11:28:11 -03:00
builtin-data.c
builtin-diff.c
builtin-evlist.c
builtin-ftrace.c
builtin-help.c
builtin-inject.c perf dso: Add reference count checking and accessor functions 2024-05-06 15:28:49 -03:00
builtin-kallsyms.c perf dso: Add reference count checking and accessor functions 2024-05-06 15:28:49 -03:00
builtin-kmem.c
builtin-kvm.c
builtin-kwork.c perf kwork: Use zfree() to avoid possibly accessing dangling pointers 2024-05-07 12:44:02 -03:00
builtin-list.c
builtin-lock.c perf lock: Avoid memory leaks from strdup() 2024-05-10 11:15:13 -03:00
builtin-mem.c perf dso: Add reference count checking and accessor functions 2024-05-06 15:28:49 -03:00
builtin-probe.c perf probe: Use zfree() to avoid possibly accessing dangling pointers 2024-05-07 12:44:02 -03:00
builtin-record.c Revert "perf record: Reduce memory for recording PERF_RECORD_LOST_SAMPLES event" 2024-06-05 11:12:36 -03:00
builtin-report.c perf report: Avoid SEGV in report__setup_sample_type() 2024-05-09 18:14:39 -03:00
builtin-sched.c perf sched: Rename 'switches' column header to 'count' and add usage description, options for latency 2024-05-10 11:10:03 -03:00
builtin-script.c perf mem-info: Add reference count checking 2024-05-07 18:06:44 -03:00
builtin-stat.c perf cpumap: Remove refcnt from 'struct cpu_aggr_map' 2024-05-07 18:06:44 -03:00
builtin-timechart.c
builtin-top.c perf dso: Add reference count checking and accessor functions 2024-05-06 15:28:49 -03:00
builtin-trace.c tools headers UAPI: Sync fcntl.h with the kernel sources to pick F_DUPFD_QUERY 2024-05-27 12:44:09 -03:00
builtin-version.c
builtin.h
check-headers.sh tools headers: Synchronize linux/bits.h with the kernel sources 2024-04-26 22:13:10 -03:00
command-list.txt
design.txt
perf-archive.sh
perf-completion.sh
perf-iostat.sh
perf-read-vdso.c
perf-sys.h
perf.c
perf.h