# failed system call counts, by pid # (c) 2010, Tom Zanussi # Licensed under the terms of the GNU GPL License version 2 # # Displays system-wide failed system call totals, broken down by pid. # If a [comm] arg is specified, only syscalls called by [comm] are displayed. from __future__ import print_function import os import sys sys.path.append(os.environ['PERF_EXEC_PATH'] + \ '/scripts/python/Perf-Trace-Util/lib/Perf/Trace') from perf_trace_context import * from Core import * from Util import * usage = "perf script -s syscall-counts-by-pid.py [comm|pid]\n"; for_comm = None for_pid = None if len(sys.argv) > 2: sys.exit(usage) if len(sys.argv) > 1: try: for_pid = int(sys.argv[1]) except: for_comm = sys.argv[1] syscalls = autodict() def trace_begin(): print("Press control+C to stop and show the summary") def trace_end(): print_error_totals() def raw_syscalls__sys_exit(event_name, context, common_cpu, common_secs, common_nsecs, common_pid, common_comm, common_callchain, id, ret): if (for_comm and common_comm != for_comm) or \ (for_pid and common_pid != for_pid ): return if ret < 0: try: syscalls[common_comm][common_pid][id][ret] += 1 except TypeError: syscalls[common_comm][common_pid][id][ret] = 1 def syscalls__sys_exit(event_name, context, common_cpu, common_secs, common_nsecs, common_pid, common_comm, id, ret): raw_syscalls__sys_exit(**locals()) def print_error_totals(): if for_comm is not None: print("\nsyscall errors for %s:\n" % (for_comm)) else: print("\nsyscall errors:\n") print("%-30s %10s" % ("comm [pid]", "count")) print("%-30s %10s" % ("------------------------------", "----------")) comm_keys = syscalls.keys() for comm in comm_keys: pid_keys = syscalls[comm].keys() for pid in pid_keys: print("\n%s [%d]" % (comm, pid)) id_keys = syscalls[comm][pid].keys() for id in id_keys: print(" syscall: %-16s" % syscall_name(id)) ret_keys = syscalls[comm][pid][id].keys() for ret, val in sorted(syscalls[comm][pid][id].items(), key = lambda kv: (kv[1], kv[0]), reverse = True): print(" err = %-20s %10d" % (strerror(ret), val)) .33.y'>linux-2.6.33.y Hosts the 0x221E linux distro kernel.Ubuntu
summaryrefslogtreecommitdiff
path: root/Documentation/admin-guide/pm
AgeCommit message (Expand)Author
2020-08-14Merge branch 'pm-cpufreq'Rafael J. Wysocki
2020-08-11cpufreq: intel_pstate: Implement passive mode with HWP enabledRafael J. Wysocki
2020-08-04Merge tag 'docs-5.9' of git://git.lwn.net/linuxLinus Torvalds
2020-07-05Documentation/admin-guide: intel-speed-select: drop doubled wordsRandy Dunlap
2020-07-05Documentation/admin-guide: intel_pstate: drop doubled wordRandy Dunlap
2020-07-02cpufreq: Specify default governor on command lineQuentin Perret
2020-07-02cpufreq: intel_pstate: Allow raw energy performance preference valueSrinivas Pandruvada
2020-07-02cpufreq: intel_pstate: Allow enable/disable energy efficiencySrinivas Pandruvada
2020-06-01Merge branches 'pm-devfreq', 'powercap', 'pm-docs' and 'pm-tools'Rafael J. Wysocki
2020-06-01Merge branch 'pm-cpufreq'Rafael J. Wysocki
2020-05-19Documentation: admin-guide: pm: Document intel-speed-selectSrinivas Pandruvada
2020-05-19Documentation: cpuidle: update the documentHanjun Guo
2020-04-17cpufreq: intel_pstate: Use passive mode by default without HWPRafael J. Wysocki
2020-04-03Documentation: PM: sleep: Document system-wide suspend code flowsRafael J. Wysocki
2020-03-30Merge branches 'pm-devfreq', 'powercap' and 'pm-docs'Rafael J. Wysocki
2020-03-30Merge branch 'pm-cpufreq'Rafael J. Wysocki
2020-03-14Documentation: intel_pstate: update links for referencesAlex Hung
2020-03-02Documentation: cpufreq: Move legacy driver documentationRafael J. Wysocki
2020-02-14Documentation: PM: QoS: Update to reflect previous code changesRafael J. Wysocki
2020-02-07Merge branches 'pm-avs' and 'pm-cpuidle'Rafael J. Wysocki
2020-02-05cpuidle: Documentation: Clean up PM QoS descriptionRafael J. Wysocki
2020-02-03Documentation: admin-guide: PM: Update sleep states documentationRafael J. Wysocki
2020-02-03intel_idle: Introduce 'states_off' module parameterRafael J. Wysocki
2020-02-03intel_idle: Introduce 'use_acpi' module parameterRafael J. Wysocki
2020-01-15Documentation: admin-guide: PM: Add intel_idle documentRafael J. Wysocki
2019-12-27cpuidle: Allow idle states to be disabled by defaultRafael J. Wysocki
2019-05-06Merge branches 'pm-docs' and 'pm-misc'Rafael J. Wysocki
2019-04-08admin-guide: pm: intel_epb: Add SPDX license tag and copyright noticeRafael J. Wysocki
2019-04-08Documentation: PM: Unify copyright noticesRafael J. Wysocki
2019-04-08Documentation: PM: Add SPDX license tags to multiple filesRafael J. Wysocki
2019-04-08cpufreq: intel_pstate: Documentation: Add references sectionsRafael J. Wysocki
2019-04-07PM / arch: x86: MSR_IA32_ENERGY_PERF_BIAS sysfs interfaceRafael J. Wysocki
2019-04-07PM / arch: x86: Rework the MSR_IA32_ENERGY_PERF_BIAS handlingRafael J. Wysocki
2019-01-16cpuidle: New timer events oriented governor for tickless systemsRafael J. Wysocki
2018-12-21Merge branches 'pm-cpuidle', 'pm-cpufreq' and 'pm-cpufreq-sched'Rafael J. Wysocki
2018-12-12cpuidle: Add 'above' and 'below' idle state metricsRafael J. Wysocki
2018-12-11cpuidle: Add cpuidle.governor= command line parameterRafael J. Wysocki
2018-12-03Documentation: admin-guide: PM: Add cpuidle documentRafael J. Wysocki
2018-11-29Documentation: intel_pstate: Clarify coordination of P-State limitsSrinivas Pandruvada
2018-11-07Documentation: cpufreq: Correct a typoZhao Wei Liew