aboutsummaryrefslogtreecommitdiffstats
path: root/tools/lib/perf
AgeCommit message (Expand)AuthorFilesLines
2024-02-29libperf evlist: Avoid out-of-bounds accessIan Rogers2-8/+14
2023-12-18libperf cpumap: Document perf_cpu_map__nr()'s behaviorIan Rogers1-0/+11
2023-12-12libperf cpumap: Add for_each_cpu() that skips the "any CPU" caseIan Rogers1-0/+6
2023-12-12libperf cpumap: Replace usage of perf_cpu_map__new(NULL) with perf_cpu_map__n...Ian Rogers5-6/+6
2023-12-12libperf cpumap: Rename perf_cpu_map__empty() to perf_cpu_map__has_any_cpu_or_...Ian Rogers5-7/+7
2023-12-12libperf cpumap: Rename perf_cpu_map__default_new() to perf_cpu_map__new_onlin...Ian Rogers4-27/+51
2023-12-12libperf cpumap: Rename perf_cpu_map__dummy_new() to perf_cpu_map__new_any_cpu()Ian Rogers7-9/+9
2023-11-30libperf: Lazily allocate/size mmap event copyIan Rogers2-4/+19
2023-10-25libperf rc_check: Add RC_CHK_EQUALIan Rogers1-0/+7
2023-10-25libperf rc_check: Make implicit enabling work for GCCIan Rogers1-1/+5
2023-09-12perf evlist: Add perf_evlist__go_system_wide() helperYang Jihong2-0/+11
2023-08-29libperf: Get rid of attr.id fieldNamhyung Kim1-1/+7
2023-08-29libperf: Add perf_record_header_attr_id()Namhyung Kim1-0/+4
2023-08-16libperf: Implement riscv mmap supportAlexandre Ghiti1-0/+66
2023-05-27perf evlist: Propagate user CPU maps intersecting core PMU mapsIan Rogers2-8/+23
2023-05-27perf evsel: Add is_pmu_core inorder to interpret own_cpusIan Rogers1-0/+9
2023-05-27libperf cpumap: Add "any CPU"/dummy test functionIan Rogers2-0/+15
2023-05-27perf cpumap: Add equal functionIan Rogers2-0/+23
2023-05-27perf cpumap: Add internal nr and cpu accessorsIan Rogers1-29/+45
2023-05-26perf cpumap: Add intersect functionIan Rogers2-0/+37
2023-05-23perf stat record: Save cache level informationK Prateek Nayak1-1/+2
2023-05-23perf stat: Setup the foundation to allow aggregation based on cache topologyK Prateek Nayak1-0/+5
2023-04-20libperf rc_check: Enable implicitly with sanitizersIan Rogers1-0/+8
2023-04-17perf cpumap: Add reference count checkingIan Rogers3-42/+50
2023-04-17libperf: Add reference count checking macrosIan Rogers1-0/+94
2023-04-17libperf: Add perf_cpu_map__refcnt() interanl accessor to use in the maps testArnaldo Carvalho de Melo2-3/+7
2023-04-12libperf: Add a perf_cpu_map__set_nr() available as an internal function for t...Arnaldo Carvalho de Melo2-0/+7
2023-04-12libperf: Make perf_cpu_map__alloc() available as an internal function for too...Ian Rogers2-1/+2
2023-03-15perf record: Record dropped sample countNamhyung Kim1-0/+2
2023-03-13perf evlist: Remove nr_groupsIan Rogers3-2/+18
2023-03-13libperf evlist: Avoid a use of evsel idxIan Rogers1-7/+6
2022-12-16libperf: Fix install_pkgconfig targetAlexander Gordeev1-1/+1
2022-12-14tools lib perf: Add dependency test to install_headersIan Rogers1-21/+22
2022-11-20tools lib perf: Make install_headers clearerIan Rogers1-1/+1
2022-11-16libperf: Add missing 'struct perf_cpu_map' forward declaration to perf/cpumap.hArnaldo Carvalho de Melo1-0/+2
2022-11-16libperf: Remove recursive perf/cpumap.h include from perf/cpumap.hArnaldo Carvalho de Melo1-1/+0
2022-11-16tools lib perf: Add missing install headersIan Rogers1-1/+9
2022-10-14libperf: Do not include non-UAPI linux/compiler.h headerArnaldo Carvalho de Melo1-3/+2
2022-10-06perf tools: Remove special handling of system-wide evselNamhyung Kim1-3/+0
2022-10-06libperf: Propagate maps only if necessaryNamhyung Kim2-7/+5
2022-10-06libperf: Populate system-wide evsel mapsNamhyung Kim1-6/+9
2022-10-04perf tools: Add debug messages and comments for testingAdrian Hunter1-0/+2
2022-10-04perf cpumap: Add range data encodingIan Rogers1-0/+14
2022-10-04perf events: Prefer union over variable length arrayIan Rogers1-1/+10
2022-09-28kallsyms: increase maximum kernel symbol length to 512Miguel Ojeda1-1/+1
2022-09-21libperf evlist: Fix polling of system-wide eventsAdrian Hunter1-2/+3
2022-09-08libperf evlist: Fix per-thread mmaps for multi-threaded targetsAdrian Hunter1-0/+50
2022-08-19libperf: Add a test case for read formatsNamhyung Kim1-0/+161
2022-08-19libperf: Handle read format in perf_evsel__read()Namhyung Kim3-3/+83
2022-08-19perf cpumap: Fix alignment for masks in event encodingIan Rogers1-4/+43
2022-08-19perf cpumap: Const map for max()Ian Rogers2-2/+2
2022-07-20perf auxtrace: Add machine_pid and vcpu to auxtrace_errorAdrian Hunter1-0/+2
2022-07-20perf tools: Add machine_pid and vcpu to id_indexAdrian Hunter2-0/+9
2022-06-23perf record: Add finished init eventAdrian Hunter1-0/+1
2022-06-19libperf evsel: Open shouldn't leak fd on failureIan Rogers1-5/+12
2022-05-26perf tools: Allow system-wide events to keep their own threadsAdrian Hunter1-2/+5
2022-05-26perf tools: Allow system-wide events to keep their own CPUsAdrian Hunter1-6/+5
2022-05-26libperf evsel: Add comments for booleansAdrian Hunter1-0/+10
2022-05-26perf stat: Add requires_cpu flag for uncoreAdrian Hunter2-1/+4
2022-05-26libperf evlist: Check nr_mmaps is correctAdrian Hunter1-2/+9
2022-05-26libperf evlist: Allow mixing per-thread and per-cpu mmapsAdrian Hunter1-29/+7
2022-05-26perf tools: Allow all_cpus to be a superset of user_requested_cpusAdrian Hunter1-6/+6
2022-05-23libperf: Add preadn()Adrian Hunter2-0/+22
2022-05-23perf cpumap: Add perf_cpu_map__for_each_idx()Ian Rogers1-0/+3
2022-05-10libperf evlist: Add evsel as a parameter to ->idx()Adrian Hunter2-2/+3
2022-05-10libperf evlist: Move ->idx() into mmap_per_evsel()Adrian Hunter1-6/+3
2022-05-10libperf evlist: Remove ->idx() per_cpu parameterAdrian Hunter2-3/+3
2022-05-10libperf evsel: Add perf_evsel__enable_thread()Adrian Hunter2-0/+16
2022-05-05perf evlist: Clear all_cpus before propagatingIan Rogers1-0/+4
2022-04-24Merge remote-tracking branch 'torvalds/master' into perf/coreArnaldo Carvalho de Melo1-2/+1
2022-04-24libperf evsel: Factor out perf_evsel__ioctl()Adrian Hunter1-7/+12
2022-04-13perf tools: Fix segfault accessing sample_id xyarrayAdrian Hunter1-2/+1
2022-04-01perf cpumap: More cpu map reuse by merge.Ian Rogers1-10/+5
2022-04-01perf cpumap: Add is_subset functionIan Rogers2-0/+21
2022-04-01perf evlist: Rename cpus to user_requested_cpusIan Rogers2-15/+20
2022-03-31Merge tag 'kbuild-v5.18-v2' of git://git.kernel.org/pub/scm/linux/kernel/git/...Linus Torvalds1-1/+1
2022-03-27Merge tag 'perf-tools-for-v5.18-2022-03-26' of git://git.kernel.org/pub/scm/l...Linus Torvalds6-23/+77
2022-03-26libperf tests: Fix typo in perf_evlist__open() failure error messagesShunsuke Nakamura1-4/+4
2022-03-24Merge tag 'flexible-array-transformations-5.18-rc1' of git://git.kernel.org/p...Linus Torvalds1-1/+1
2022-02-23libperf: Add API for allocating new thread map arrayTzvetomir Stoyanov (VMware)5-7/+61
2022-02-23libperf: Rename arguments of perf_thread_map APIsTzvetomir Stoyanov (VMware)3-12/+12
2022-02-17treewide: Replace zero-length arrays with flexible-array membersGustavo A. R. Silva1-1/+1
2022-02-16libperf: Fix perf_cpu_map__for_each_cpu macroJiri Olsa4-5/+18
2022-02-16libperf: Fix 32-bit build for tests uint64_t printfRob Herring1-2/+3
2022-02-15kbuild: replace $(if A,A,B) with $(or A,B)Masahiro Yamada1-1/+1
2022-02-06libperf: Add arm64 support to perf_mmap__read_self()Rob Herring2-1/+102
2022-01-22perf cpumap: Migrate to libperf cpumap apiIan Rogers1-2/+2
2022-01-14libperf tests: Update a use of the new cpumap APIIan Rogers1-2/+3
2022-01-12perf cpumap: Give CPUs their own typeIan Rogers9-63/+85
2022-01-12libperf: Sync evsel documentationIan Rogers1-5/+5
2022-01-12libperf: Allow NULL in perf_cpu_map__idx()Ian Rogers1-1/+6
2022-01-12libperf: Use cpu not index for evsel mmapIan Rogers1-1/+2
2022-01-12libperf: Switch cpu to more accurate cpu_map_idxIan Rogers2-48/+50
2022-01-12perf cpumap: Move 'has' function to libperfIan Rogers5-2/+10
2022-01-12libperf: Add comments to 'struct perf_cpu_map'Ian Rogers1-0/+9
2021-12-16libperf tests: Fix a spelling mistake "Runnnig" -> "Running"Colin Ian King1-1/+1
2021-12-07perf evlist: Allow setting arbitrary leaderIan Rogers2-7/+10
2021-12-07libperf tests: Add test_stat_multiplexing testShunsuke Nakamura1-0/+157
2021-12-07libperf: Remove scaling process from perf_mmap__read_self()Shunsuke Nakamura1-2/+0
2021-12-07libperf: Adopt perf_counts_values__scale() from tools/perf/utilShunsuke Nakamura3-0/+24
2021-10-26Merge remote-tracking branch 'torvalds/master' into perf/coreArnaldo Carvalho de Melo2-6/+7
2021-10-20perf tools: Add support for PERF_RECORD_AUX_OUTPUT_HW_IDAdrian Hunter1-0/+6
2021-10-14libperf tests: Fix test_stat_cpuShunsuke Nakamura2-6/+6
2021-10-14libperf test evsel: Fix build error on !x86 architecturesShunsuke Nakamura1-0/+1
2021-10-08libperf cpumap: Use binary search in perf_cpu_map__idx() as array are sortedRiccardo Mancini1-4/+12
2021-09-18libperf evsel: Make use of FD robust.Ian Rogers1-23/+41
2021-08-31libperf cpumap: Take into advantage it is sorted to optimize perf_cpu_map__max()Riccardo Mancini1-8/+2
2021-08-24libperf tests: Fix verbose printingShunsuke Nakamura1-0/+2
2021-08-11libperf: Add perf_cpu_map__default_new()Jin Yao2-0/+6
2021-07-09libperf: Add tests for perf_evlist__set_leader()Jiri Olsa1-6/+21
2021-07-09libperf: Remove BUG_ON() from library code in get_group_fd()Arnaldo Carvalho de Melo1-7/+16
2021-07-09libperf: Add group support to perf_evsel__open()Jiri Olsa1-2/+24
2021-07-09libperf: Adopt evlist__set_leader() from tools/perf as perf_evlist__set_leader()Jiri Olsa4-0/+24
2021-07-09libperf: Move 'nr_groups' from tools/perf to evlist::nr_groupsJiri Olsa1-0/+1
2021-07-09libperf: Move 'leader' from tools/perf to perf_evsel::leaderJiri Olsa2-0/+2
2021-07-09libperf: Move 'idx' from tools/perf to perf_evsel::idxJiri Olsa3-3/+8
2021-07-07libperf: Change tests to single static and shared binariesJiri Olsa11-51/+67
2021-04-29perf jit: Let convert_timestamp() to be backwards-compatibleLeo Yan1-0/+2
2021-04-29perf tools: Change fields type in perf_record_time_convLeo Yan1-2/+3
2021-04-29perf util: Move bpf_perf definitions to a libperf headerSong Liu1-0/+31
2021-04-20libperf xyarray: Add bounds checks to xyarray__entry()Rob Herring1-1/+8
2021-04-20libperf: Add support for user space counter accessRob Herring4-0/+161
2021-04-15libperf tests: Add support for verbose printingRob Herring2-2/+36
2021-04-15libperf: Add evsel mmap supportRob Herring5-0/+86
2021-03-06libperf: Add perf_evlist__reset_id_hash()Namhyung Kim2-4/+11
2021-01-27Merge remote-tracking branch 'torvalds/master' into perf/coreArnaldo Carvalho de Melo1-13/+4
2021-01-21perf evlist: Fix id index for heterogeneous systemsAdrian Hunter1-13/+4
2021-01-20Merge remote-tracking branch 'torvalds/master' into perf/coreArnaldo Carvalho de Melo4-6/+7
2021-01-15libperf tests: Fail when failing to get a tracepoint idIan Rogers1-0/+1
2021-01-15libperf tests: If a test fails return non-zeroIan Rogers4-4/+4
2021-01-15libperf tests: Avoid uninitialized variable warningIan Rogers1-2/+2
2020-12-28perf tools: Store build id when available in PERF_RECORD_MMAP2 metadata eventsJiri Olsa1-4/+14
2020-10-14perf tools: Add size to 'struct perf_record_header_build_id'Jiri Olsa1-1/+11
2020-10-13Merge branch 'perf/urgent' into perf/coreArnaldo Carvalho de Melo1-0/+3
2020-10-07perf stat: Fix out of bounds CPU map access when handling armv8_pmu eventsNamhyung Kim1-0/+3
2020-09-22perf tsc: Support cap_user_time_short for event TIME_CONVLeo Yan1-0/+4
2020-08-13libperf: Fix man page typosRob Herring3-14/+17
2020-07-21libperf: Add flags to fdarray fds objectsAlexey Budankov2-4/+4
2020-07-10perf tools: Add support for PERF_RECORD_TEXT_POKEAdrian Hunter1-0/+9
2020-05-05libperf evlist: Fix a refcount leakIan Rogers1-0/+1
2020-05-05libperf: Add NULL pointer check for cpu_map iteration and NULL assignment for...He Zhe2-1/+2
2020-04-22perf evlist: Remove duplicate headersJagadeesh Pagadala1-2/+0
2020-04-03perf tools: Basic support for CGROUP eventNamhyung Kim1-0/+7
2020-03-04libperf: Add counting exampleMichael Petlan1-0/+83
2020-01-14libperf: Setup initial evlist::all_cpus valueJiri Olsa1-0/+3
2020-01-06libperf: Add man pagesJiri Olsa14-229/+1197
2020-01-06libperf: Move to tools/lib/perfJiri Olsa36-0/+3866