aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/builtin-lock.c
AgeCommit message (Expand)AuthorFilesLines
2025-11-13perf lock: Fix segfault due to missing kernel mapRavi Bangoria1-0/+2
2025-09-12perf lock: Provide a host_env for session newIan Rogers1-1/+6
2025-07-25perf session: Add accessor for session->header.envIan Rogers1-2/+2
2025-05-31perf lock contention: Reject more than 10ms delays for safetyNamhyung Kim1-0/+5
2025-05-09perf lock contention: Add -J/--inject-delay optionNamhyung Kim1-0/+74
2025-02-28perf lock: Report owner stack in usermodeChun-Tse Shao1-2/+20
2025-02-28perf lock: Make rb_tree helper functions genericChun-Tse Shao1-11/+23
2025-01-17perf lock: Rename fields in lock_type_tableChun-Tse Shao1-14/+19
2025-01-17perf lock: Add percpu-rwsem for type filterChun-Tse Shao1-0/+3
2025-01-17perf lock: Fix parse_lock_type which only retrieve one lock flagChun-Tse Shao1-25/+41
2025-01-17perf lock: Fix return code for functions in __cmd_contentionAthira Rajeev1-3/+8
2024-12-23perf lock contention: Handle slab objects in -L/--lock-filter optionNamhyung Kim1-0/+35
2024-12-20perf lock contention: Add and use LCB_F_TYPE_MASKNamhyung Kim1-2/+2
2024-12-18perf lock: Move common lock contention code to new fileIan Rogers1-136/+1
2024-09-04libsubcmd: Don't free the usage stringAditya Gupta1-0/+3
2024-08-12perf lock: Use perf_tool__init()Ian Rogers1-19/+18
2024-08-12perf tool: Constify tool pointersIan Rogers1-2/+2
2024-06-03perf lock info: Display both map and thread by defaultNick Forrington1-12/+15
2024-05-10perf lock: Avoid memory leaks from strdup()Ian Rogers1-14/+4
2023-11-27perf lock: Fix a memory leak on an error pathzhaimingbing1-1/+3
2023-10-12perf lock: Fix a memory leak on an error pathIan Rogers1-0/+1
2023-10-04tools/perf: Update call stack check in builtin-lock.cKajol Jain1-1/+16
2023-09-12perf lock contention: Add -G/--cgroup-filter optionNamhyung Kim1-0/+56
2023-09-12perf lock contention: Add --lock-cgroup optionNamhyung Kim1-1/+39
2023-09-12perf lock contention: Prepare to handle cgroupsNamhyung Kim1-1/+2
2023-08-25perf lock contention: Fix typo in max-stack option descriptionKajol Jain1-1/+1
2023-08-17perf lock: Don't pass an ERR_PTR() directly to perf_session__delete()Arnaldo Carvalho de Melo1-0/+1
2023-07-01perf lock contention: Add --output optionNamhyung Kim1-58/+82
2023-07-01perf lock contention: Add -x option for CSV style outputNamhyung Kim1-67/+236
2023-07-01perf lock: Remove stale commentsNamhyung Kim1-2/+0
2023-06-23perf symbol: Remove now unused symbol_conf.sort_by_nameIan Rogers1-2/+0
2023-06-12perf callchain: Use pthread keys for tls callchain_cursorIan Rogers1-2/+5
2023-05-28perf lock: Dynamically allocate lockhash_tableIan Rogers1-4/+16
2023-05-06Revert "perf build: Make BUILD_BPF_SKEL default, rename to NO_BPF_SKEL"Arnaldo Carvalho de Melo1-1/+1
2023-04-06perf map: Add helper for ->map_ip() and ->unmap_ip()Ian Rogers1-2/+2
2023-04-06perf lock contention: Revise needs_callstack() conditionNamhyung Kim1-1/+1
2023-04-06perf lock contention: Update total/bad stats for hidden entriesNamhyung Kim1-0/+11
2023-04-06perf lock contention: Add data failure statNamhyung Kim1-1/+3
2023-04-06perf lock contention: Update default map size to 16384Namhyung Kim1-1/+1
2023-04-06perf lock contention: Use -M for --map-nr-entriesNamhyung Kim1-1/+1
2023-04-06perf lock contention: Simplify parse_lock_type()Namhyung Kim1-35/+8
2023-04-04perf lock contention: Show detail failure reason for BPFNamhyung Kim1-6/+22
2023-04-04perf lock contention: Fix debug stat if no contentionNamhyung Kim1-2/+2
2023-03-14perf lock contention: Show lock type with addressNamhyung Kim1-15/+30
2023-03-14perf lock contention: Track and show siglock with addressNamhyung Kim1-2/+1
2023-03-14perf lock contention: Track and show mmap_lock with addressNamhyung Kim1-1/+1
2023-03-14perf build: Make BUILD_BPF_SKEL default, rename to NO_BPF_SKELIan Rogers1-1/+1
2023-02-08perf lock contention: Add -o/--lock-owner optionNamhyung Kim1-9/+40
2023-02-08perf lock contention: Fix to save callstack for the default modifiedNamhyung Kim1-0/+3
2023-02-03perf lock contention: Support filters for different aggregationNamhyung Kim1-31/+44
2023-02-03perf lock contention: Use lock_stat_find{,new}Namhyung Kim1-2/+2
2023-02-02perf lock contention: Add -S/--callstack-filter optionNamhyung Kim1-1/+67
2023-01-03perf lock contention: Fix core dump related to not finding the "__sched_text_...Thomas Richter1-0/+2
2022-12-21perf lock contention: Add -L/--lock-filter optionNamhyung Kim1-6/+134
2022-12-21perf lock contention: Support lock type filtering for BPFNamhyung Kim1-0/+1
2022-12-21perf lock contention: Add -Y/--type-filter optionNamhyung Kim1-2/+114
2022-12-20perf lock contention: Factor out lock_type_tableNamhyung Kim1-24/+24
2022-12-20perf tools: Fix usage of the verbose variableYang Jihong1-3/+3
2022-12-14perf lock contention: Add -l/--lock-addr optionNamhyung Kim1-17/+67
2022-12-14perf lock contention: Implement -t/--threads option for BPFNamhyung Kim1-10/+3
2022-12-14machine: Adopt is_lock_function() from builtin-lock.cArnaldo Carvalho de Melo1-56/+2
2022-11-10perf lock: Allow concurrent record and reportNamhyung Kim1-22/+46
2022-10-31perf lock contention: Check --max-stack optionNamhyung Kim1-3/+27
2022-10-27perf tools: Make quiet mode consistent between toolsJames Clark1-1/+1
2022-10-04perf lock: Add -q/--quiet option to suppress header and debug messagesNamhyung Kim1-11/+16
2022-10-04perf lock: Add -E/--entries optionNamhyung Kim1-5/+15
2022-10-04perf lock contention: Allow to change stack depth and skipNamhyung Kim1-6/+16
2022-10-04perf lock contention: Show full callstack with -v optionNamhyung Kim1-4/+47
2022-10-04perf lock contention: Factor out get_symbol_name_offset()Namhyung Kim1-9/+19
2022-10-04perf lock: Add get_key_by_aggr_mode helperShang XiaoJing1-76/+53
2022-10-04perf lock: Remove unused pthread.h includeIan Rogers1-1/+0
2022-09-08perf lock: Remove redundant word 'contention' in help messageYang Jihong1-2/+1
2022-08-02perf lock: Print the number of lost entries for BPFNamhyung Kim1-1/+7
2022-08-02perf lock: Add --map-nr-entries optionNamhyung Kim1-1/+22
2022-08-02perf lock: Introduce struct lock_contentionNamhyung Kim1-9/+14
2022-08-02perf parse-events: Break out tracepoint and printingIan Rogers1-0/+1
2022-08-01perf lock: Implement cpu and task filters for BPFNamhyung Kim1-9/+46
2022-08-01perf lock: Use BPF for lock contention analysisNamhyung Kim1-114/+50
2022-08-01perf lock: Pass machine pointer to is_lock_function()Namhyung Kim1-8/+7
2022-07-25perf lock: Support -t option for 'contention' subcommandNamhyung Kim1-2/+20
2022-07-25perf lock: Add -k and -F options to 'contention' subcommandNamhyung Kim1-11/+40
2022-07-25perf lock: Add 'contention' subcommandNamhyung Kim1-1/+211
2022-07-25perf lock: Add lock aggregation enumNamhyung Kim1-20/+94
2022-07-25perf lock: Add flags field in the lock_statNamhyung Kim1-9/+13
2022-07-21perf lock: Fix a copy-n-paste bugNamhyung Kim1-1/+1
2022-07-12perf lock: Look up callchain for the contended locksNamhyung Kim1-4/+156
2022-07-12perf lock: Handle lock contention tracepointsNamhyung Kim1-0/+137
2022-07-12perf lock: Add lock contention tracepoints record supportNamhyung Kim1-7/+69
2022-07-12perf lock: Skip print_bad_events() if nothing badNamhyung Kim1-0/+7
2022-07-12perf lock: Allow to use different kernel symbolsNamhyung Kim1-0/+4
2022-07-12perf lock: Print wait times with unitNamhyung Kim1-8/+40
2022-06-03perf lock: Change to synthesize task eventsNamhyung Kim1-1/+1
2022-05-23perf lock: Add -t/--thread option for reportNamhyung Kim1-1/+27
2022-05-23perf lock: Do not discard broken lock statsNamhyung Kim1-39/+25
2022-03-26perf tools: Enhance the matching of sub-commands abbreviationsWei Li1-2/+3
2022-03-25perf lock: Add -F/--field option to control outputNamhyung Kim1-5/+50
2022-03-25perf lock: Extend struct lock_key to have print functionNamhyung Kim1-26/+65
2022-03-25perf lock: Add --synth=no option for recordNamhyung Kim1-1/+1
2022-02-10perf lock: Carefully combine lock stats for discarded entriesNamhyung Kim1-0/+16
2022-02-10perf lock: Add -c/--combine-locks optionNamhyung Kim1-0/+68
2022-02-10perf lock: Fix lock name length check for printingNamhyung Kim1-1/+1
2022-02-10perf lock: Sort map info based on class nameNamhyung Kim1-1/+19
2022-02-10perf lock: Change type of lock_stat->addr to u64Namhyung Kim1-26/+9
2022-02-10perf lock: Convert lockhash_table to use hlistNamhyung Kim1-8/+8
2021-08-02perf tools: Remove repipe argument from perf_session__new()Namhyung Kim1-1/+1
2021-03-23perf tools: Fix various typos in commentsIngo Molnar1-1/+1
2020-11-12perf lock: Don't free "lock_seq_stat" if read_count isn't zeroLeo Yan1-1/+1
2020-11-12perf lock: Correct field name "flags"Leo Yan1-1/+1
2020-05-05perf lock: Rename perf_evsel__*() operating on 'struct evsel *' to evsel__*()Arnaldo Carvalho de Melo1-12/+8
2020-05-05perf evsel: Rename perf_evsel__{str,int}val() and other tracepoint field mete...Arnaldo Carvalho de Melo1-10/+10
2020-04-30perf tools: Remove unneeded semicolonsZou Wei1-1/+1
2019-09-20perf session: Return error code for perf_session__new() function on failureMamatha Inamdar1-2/+3
2019-08-31perf tools: Remove needless evlist.h include directivesArnaldo Carvalho de Melo1-1/+1
2019-08-31perf tools: Remove needless evlist.h include directivesArnaldo Carvalho de Melo1-1/+1
2019-07-29perf evsel: Rename struct perf_evsel to struct evselJiri Olsa1-15/+15
2019-07-09perf tools: Use list_del_init() more thorouglyArnaldo Carvalho de Melo1-4/+4
2019-07-09tools lib: Adopt zalloc()/zfree() from tools/perfArnaldo Carvalho de Melo1-1/+1
2019-02-22perf data: Add global path holderJiri Olsa1-5/+3
2017-11-07Merge branch 'linus' into perf/core, to fix conflictsIngo Molnar1-0/+1
2017-11-02License cleanup: add SPDX GPL-2.0 license identifier to files with no licenseGreg Kroah-Hartman1-0/+1
2017-10-30perf tools: Add struct perf_data_fileJiri Olsa1-3/+5
2017-10-30perf tools: Rename struct perf_data_file to perf_dataJiri Olsa1-2/+2
2017-04-19perf tools: Include errno.h where neededArnaldo Carvalho de Melo1-0/+1
2017-04-19perf tools: Including missing inttypes.h headerArnaldo Carvalho de Melo1-0/+1
2017-04-19perf tools: Add include <linux/kernel.h> where ARRAY_SIZE() is usedArnaldo Carvalho de Melo1-0/+1
2017-03-27perf tools: Remove unused 'prefix' from builtin functionsArnaldo Carvalho de Melo1-3/+3
2017-03-17perf lock: Make 'f' part of the common 'lock_options'Arnaldo Carvalho de Melo1-2/+1
2017-03-17perf lock: Subcommands should include common optionsChangbin Du1-8/+11
2017-03-14perf tools: Add PERF_RECORD_NAMESPACES to include namespaces related infoHari Bathini1-0/+1
2015-12-17perf subcmd: Create subcmd libraryJosh Poimboeuf1-1/+1
2015-05-08perf machine: Protect the machine->threads with a rwlockArnaldo Carvalho de Melo1-2/+6
2015-04-02perf lock: Support using -f to override perf.data file ownershipYunlong Song1-0/+5
2015-03-11perf ordered_events: Shorten function signaturesArnaldo Carvalho de Melo1-1/+1
2014-09-26perf tools: Modify error code for when perf_session__new() failsTaeung Song1-1/+1
2014-08-13perf tools: Check recorded kernel version when finding vmlinuxNamhyung Kim1-1/+1
2014-08-13perf lock: Move call to symbol__init() after creating sessionNamhyung Kim1-1/+2
2014-08-12perf tools: Rename ordered_samples bool to ordered_eventsJiri Olsa1-1/+1
2014-04-16perf lock: Introduce --list-cmds for use by scriptsRamkumar Ramachandra1-4/+6
2013-11-07perf evsel: Ditch evsel->handler.data fieldArnaldo Carvalho de Melo1-2/+2
2013-11-04perf tools: Use an accessor to read thread commFrederic Weisbecker1-1/+1
2013-10-21perf tools: Add data object to handle perf data fileJiri Olsa1-1/+6
2013-10-09perf lock: Account for lock average wait timeDavidlohr Bueso1-1/+9
2013-10-09perf lock: Limit bad rate precisionDavidlohr Bueso1-1/+1
2013-10-09perf lock: Redo __cmd_reportDavidlohr Bueso1-32/+36
2013-10-09perf lock: Plug some memleaksDavidlohr Bueso1-5/+9
2013-10-09perf lock: Return proper code in report_lock_*_eventDavidlohr Bueso1-12/+12
2013-10-09perf lock: Remove dead codeDavidlohr Bueso1-6/+0
2013-08-29perf tools: change machine__findnew_thread() to set thread pidAdrian Hunter1-1/+2
2013-07-08perf record: Remove -f/--force optionJiri Olsa1-1/+1
2012-10-29perf tools: Add a global variable "const char *input_name"Feng Tang1-2/+0
2012-10-02perf lock: Don't use globals where not needed toArnaldo Carvalho de Melo1-51/+39
2012-09-24perf lock: Use perf_evsel__intval and perf_session__set_tracepoints_handlersArnaldo Carvalho de Melo1-146/+87
2012-09-11perf tools: Use __maybe_used for unused variablesIrina Tirdea1-2/+2
2012-09-05perf lock: Remove use of die and handle errorsDavid Ahern1-57/+124
2012-08-09perf lock record: improve message when tracepoints are not enabledDavid Ahern1-5/+24
2012-08-07perf lock: Use evsel->tp_format and perf_sampleArnaldo Carvalho de Melo1-74/+42
2012-08-07perf evsel: Cache associated event_formatArnaldo Carvalho de Melo1-9/+6
2012-06-27perf tools: Stop using a global trace events description listArnaldo Carvalho de Melo1-2/+2
2012-04-25perf: Have perf use the new libtraceevent.a librarySteven Rostedt1-13/+13
2012-01-30perf lock: Document lock info subcommandNamhyung Kim1-2/+2
2011-12-23perf report: Accept fifos as input fileRobert Richter1-1/+1
2011-11-28perf tools: Rename perf_event_ops to perf_toolArnaldo Carvalho de Melo1-2/+3
2011-11-28perf tools: Resolve machine earlier and pass it to perf_event_opsArnaldo Carvalho de Melo1-2/+2
2011-11-28perf tools: Pass tool context in the the perf_event_ops functionsArnaldo Carvalho de Melo1-1/+2
2011-08-08perf lock: Dropping unsupported ':r' modifierZhu Yanhai1-4/+4
2011-03-23perf session: Pass evsel in event_ops->sample()Arnaldo Carvalho de Melo1-1/+3
2011-03-16perf lock: Fix sorting by wait_minMarcin Slusarz1-1/+12
2011-02-23perf lock: Document valid sort keysMarcin Slusarz1-1/+1
2011-01-29perf tools: Kill event_t typedef, use 'union perf_event' insteadArnaldo Carvalho de Melo1-3/+3
2011-01-29perf tools: Rename 'struct sample_data' to 'struct perf_sample'Arnaldo Carvalho de Melo1-1/+1
2011-01-22perf tools: Fix 64 bit integer format stringsArnaldo Carvalho de Melo1-3/+3
2010-12-21perf session: Fallback to unordered processing if no sample_id_allIan Munsie1-1/+1
2010-12-06perf tools: Catch a few uncheck calloc/malloc'sChris Samuel1-0/+3
2010-12-04perf session: Parse sample earlierArnaldo Carvalho de Melo1-8/+4
2010-11-16perf: Rename 'perf trace' to 'perf script'Ingo Molnar1-3/+3
2010-05-17perf options: Type check OPT_BOOLEAN and fix the offendersArnaldo Carvalho de Melo1-2/+1
2010-05-09perf lock: Drop "-a" option from cmd_record() default arguments setHitoshi Mitake1-1/+0
2010-05-09perf lock: Always check min AND max wait timeFrederic Weisbecker1-1/+1
2010-05-09perf: Fix perf lock bad rateFrederic Weisbecker1-2/+2
2010-05-09perf: Humanize lock flags in perf lockFrederic Weisbecker1-3/+8
2010-05-09perf: Cleanup perf lock broken statesFrederic Weisbecker1-20/+29
2010-05-09perf lock: Add "info" subcommand for dumping misc informationHitoshi Mitake1-23/+73
2010-05-02perf: add perf-inject builtinTom Zanussi1-1/+1
2010-04-24perf: Generalize perf lock's sample event reordering to the session layerFrederic Weisbecker1-175/+22
2010-04-24perf lock: Fix state machine to recognize lock sequenceHitoshi Mitake1-68/+342
2010-04-14perf: Fix endianness argument compatibility with OPT_BOOLEAN() and introduce ...Ian Munsie1-1/+1
2010-02-27perf lock: Drop the buffers multiplexing dependencyFrederic Weisbecker1-2/+146
2010-01-31perf lock: Clean up various detailsIngo Molnar1-128/+82
2010-01-31perf lock: Introduce new tool "perf lock", for analyzing lock statisticsHitoshi Mitake1-0/+724