# 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)) 3.y'>linux-2.6.33.y Hosts the 0x221E linux distro kernel.Ubuntu
summaryrefslogtreecommitdiff
path: root/arch/powerpc/platforms/chrp
AgeCommit message (Expand)Author
2011-07-26Merge branch 'next/cross-platform' of git://git.kernel.org/pub/scm/linux/kern...Linus Torvalds
2011-07-26atomic: use <linux/atomic.h>Arun Sharma
2011-07-25Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jik...Linus Torvalds
2011-07-12powerpc: rename ppc_pci_*_flags to pci_*_flagsRob Herring
2011-06-10treewide: Convert uses of struct resource to resource_size(ptr)Joe Perches
2011-06-09pcspkr: Cleanup Kconfig dependenciesRalf Baechle
2011-04-20powerpc/smp: smp_ops->kick_cpu() should be able to failMichael Ellerman
2011-03-29powerpc: Convert to new irq_* function namesThomas Gleixner
2011-03-10powerpc: platforms/chrp irq_data conversion.Lennert Buytenhek
2010-11-30powerpc/nvram: Move things out of asm/nvram.hBenjamin Herrenschmidt
2010-09-02powerpc/chrp/nvram.c: Add of_node_put to avoid memory leakJulia Lawall
2010-03-30include cleanup: Update gfp.h and slab.h includes to prepare for breaking imp...Tejun Heo
2009-12-17Merge branch 'for-33' of git://repo.or.cz/linux-kbuildLinus Torvalds
2009-12-12kbuild: move utsrelease.h to include/generatedSam Ravnborg
2009-10-30powerpc/chrp: Use the same RTAS daemon as pSeriesBenjamin Herrenschmidt
2009-06-26powerpc: Use one common impl. of RTAS timebase sync and use raw spinlockBenjamin Herrenschmidt
2009-05-21powerpc/pci: Clean up direct access to sysdata by CHRP platformsKumar Gala
2009-03-30Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-cpumaskLinus Torvalds
2009-03-30cpumask: remove references to struct irqaction's mask field.Rusty Russell
2009-03-11powerpc/kconfig: Kill PPC_MULTIPLATFORMBenjamin Herrenschmidt
2009-02-11powerpc: Disable mv643xx Ethernet port 0 on PegasosGabriel Paubert
2008-12-16powerpc: Introduce ppc_pci_flags accessorsJosh Boyer
2008-12-16powerpc/chrp: Add missing of_node_put in pci.cNicolas Palix
2008-10-15Merge commit 'origin'Benjamin Herrenschmidt
2008-10-15powerpc: Fix CHRP PCI config access for indirect_pciBenjamin Herrenschmidt
2008-10-15powerpc/chrp: Fix detection of Python PCI host bridge on IBM CHRPsBenjamin Herrenschmidt
2008-09-06Remove asm/a.out.h files for all architectures without a.out support.Adrian Bunk
2008-08-20powerpc: Use bcd2bin/bin2bcdAdrian Bunk
2008-07-21driver core: fix a lot of printk usages of bus_idGreg Kroah-Hartman
2008-05-14[POWERPC] Move xmon_irq() declaration into xmon.hMichael Ellerman
2008-04-28mv643xx_eth: get rid of static variables, allow multiple instancesLennert Buytenhek
2008-01-25[POWERPC] Autodetect serial console on pegasos2Olaf Hering
2008-01-25[POWERPC] Revert chrp_pci_fixup_vt8231_ata devinit to fix libata on pegasosOlaf Hering
2007-12-20[POWERPC] CHRP: Fix possible NULL pointer dereferenceCyrill Gorcunov
2007-12-20[POWERPC] pci32: Add flags modifying the PCI code behaviourBenjamin Herrenschmidt
2007-12-10powerpc: Fix IDE legacy vs. native fixupsBenjamin Herrenschmidt