aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/scripts/python
AgeCommit message (Expand)AuthorFilesLines
2013-11-05perf tools: Finish the removal of 'self' argumentsArnaldo Carvalho de Melo1-3/+3
2013-05-22perf: net_dropmonitor: Remove progress indicatorBen Hutchings1-12/+1
2013-05-22perf: net_dropmonitor: Use bisection in symbol lookupBen Hutchings1-4/+18
2013-05-22perf: net_dropmonitor: Do not assume ordering of dictionariesBen Hutchings1-4/+4
2013-05-22perf: net_dropmonitor: Fix symbol-relative addressesBen Hutchings1-3/+3
2013-05-22perf: net_dropmonitor: Fix trace parameter orderBen Hutchings1-1/+1
2012-09-17perf scripts: Add event_analyzing_sample-record/reportFeng Tang2-0/+11
2012-08-09perf script python: Correct handler check and spelling errorsFeng Tang2-19/+15
2012-08-08perf scripts python: Add event_analyzing_sample.py as a sample for general event handlingFeng Tang1-0/+193
2012-08-08perf scripts python: Add a python library EventClass.pyFeng Tang1-0/+94
2011-09-29perf script: Add drop monitor scriptNeil Horman3-0/+78
2010-12-25perf script: Finish the rename from trace to scriptArnaldo Carvalho de Melo16-16/+16
2010-11-16perf: Rename 'perf trace' to 'perf script'Ingo Molnar1-1/+1
2010-11-10perf trace scripting: remove system-wide param from shell scriptsTom Zanussi7-7/+7
2010-10-26perf python scripting: Add futex-contention scriptArnaldo Carvalho de Melo4-0/+74
2010-10-26perf python scripting: Fixup cut'n'paste error in sctop scriptArnaldo Carvalho de Melo1-1/+1
2010-10-25perf python scripting: Support fedora 11 (audit 1.7.17)Arnaldo Carvalho de Melo1-1/+4
2010-10-25perf python scripting: Improve the syscalls-by-pid scriptArnaldo Carvalho de Melo1-8/+13
2010-10-25perf python scripting: print the syscall name on sctopArnaldo Carvalho de Melo1-5/+2
2010-10-25perf python scripting: Improve the syscalls-counts scriptArnaldo Carvalho de Melo1-2/+3
2010-10-25perf python scripting: Improve the failed-syscalls-by-pid scriptArnaldo Carvalho de Melo2-8/+50
2010-10-23perf trace: Use $PERF_EXEC_PATH in canned report scriptsBen Hutchings6-6/+6
2010-09-07perf: Add a script to show packets processingKoki Sanagi3-0/+477
2010-08-02perf, sched migration: Librarize task states and event headers helpersFrederic Weisbecker2-30/+30
2010-08-02perf, sched migration: Librarize the GUI classFrederic Weisbecker2-175/+189
2010-08-02perf, sched migration: Make the GUI class client agnosticFrederic Weisbecker1-85/+92
2010-08-02perf, sched migration: Make it vertically scrollableFrederic Weisbecker1-9/+20
2010-08-02perf, sched migration: Parameterize cpu height and spacingNikhil Rao1-9/+14
2010-08-02perf, sched migration: Fix key bindingsNikhil Rao1-0/+2
2010-08-02perf, sched migration: Ignore unhandled task statesFrederic Weisbecker1-2/+1
2010-08-02perf, sched migration: Handle ignored migrate out eventsFrederic Weisbecker1-1/+4
2010-08-02perf: New migration tool overviewFrederic Weisbecker3-0/+639
2010-06-01perf scripts python: Give field dict to unhandled callbackPierre Tardy1-2/+1
2010-05-10perf/trace/scripting: syscall-counts script cleanupTom Zanussi1-1/+1
2010-05-10perf/trace/scripting: syscall-counts-by-pid script cleanupTom Zanussi1-1/+1
2010-05-10perf/trace/scripting: failed-syscalls-by-pid script cleanupTom Zanussi1-1/+1
2010-04-30perf: Remove leftover useless options to record trace events from scriptsFrederic Weisbecker4-4/+4
2010-04-14perf trace/scripting: Enable scripting shell scripts for live modeTom Zanussi6-6/+24
2010-04-14perf trace/scripting: Add rwtop and sctop scriptsTom Zanussi4-0/+107
2010-02-25perf/scripts: Add syscall tracing scriptsTom Zanussi10-0/+291
2010-02-25perf/scripts: Add Python scripting engineTom Zanussi3-0/+204
class="nv">$HOME/.organization`" elif [ -f $HOME/.signature ]; then ORGANIZATION=`sed -e "s/^/ /" $HOME/.signature; echo ">"` fi fi # If they don't have a preferred editor set, then use if [ -z "$VISUAL" ]; then if [ -z "$EDITOR" ]; then EDIT=vi else EDIT="$EDITOR" fi else EDIT="$VISUAL" fi # Find out some information. SYSTEM=`( [ -f /bin/uname ] && /bin/uname -a ) || \ ( [ -f /usr/bin/uname ] && /usr/bin/uname -a ) || echo ""` ARCH=`[ -f /bin/arch ] && /bin/arch` MACHINE=`[ -f /bin/machine ] && /bin/machine` ORGANIZATION_C='<organization of PR author (multiple lines)>' SYNOPSIS_C='<synopsis of the problem (one line)>' SEVERITY_C='<[ non-critical | serious | critical ] (one line)>' PRIORITY_C='<[ low | medium | high ] (one line)>' CLASS_C='<[ sw-bug | doc-bug | change-request | support ] (one line)>' RELEASE_C='<release number or tag (one line)>' ENVIRONMENT_C='<machine, os, target, libraries (multiple lines)>' DESCRIPTION_C='<precise description of the problem (multiple lines)>' HOW_TO_REPEAT_C='<code/input/activities to reproduce the problem (multiple lines)>' FIX_C='<how to correct or work around the problem, if known (multiple lines)>' cat > $TEMP <<EOF SEND-PR: -*- send-pr -*- SEND-PR: Lines starting with \`SEND-PR' will be removed automatically, as SEND-PR: will all comments (text enclosed in \`<' and \`>'). SEND-PR: From: ${USER} To: ${BUGADDR} Subject: [50 character or so descriptive subject here (for reference)] >Submitter-Id: net >Originator: ${ORIGINATOR} >Organization: ${ORGANIZATION- $ORGANIZATION_C} >Confidential: no >Synopsis: $SYNOPSIS_C >Severity: $SEVERITY_C >Priority: $PRIORITY_C >Category: libc >Class: $CLASS_C >Release: libc-${VERSION} >Environment: $ENVIRONMENT_C `[ -n "$SYSTEM" ] && echo System: $SYSTEM` `[ -n "$ARCH" ] && echo Architecture: $ARCH` `[ -n "$MACHINE" ] && echo Machine: $MACHINE` `[ -n "$ADDONS" ] && echo Addons: $ADDONS` >Description: $DESCRIPTION_C >How-To-Repeat: $HOW_TO_REPEAT_C >Fix: $FIX_C EOF chmod u+w $TEMP cp $TEMP $TEMP.x eval $EDIT $TEMP if cmp -s $TEMP $TEMP.x; then echo "File not changed, no bug report submitted." exit 1 fi # # Check the enumeration fields # This is a "sed-subroutine" with one keyword parameter # (with workaround for Sun sed bug) # SED_CMD=' /$PATTERN/{ s||| s|<.*>|| s|^[ ]*|| s|[ ]*$|| p q }' while :; do CNT=0 # # 1) Severity # PATTERN=">Severity:" SEVERITY=`eval sed -n -e "\"$SED_CMD\"" $TEMP` case "$SEVERITY" in ""|non-critical|serious|critical) CNT=`expr $CNT + 1` ;; *) echo "$COMMAND: \`$SEVERITY' is not a valid value for \`Severity'." esac # # 2) Priority # PATTERN=">Priority:" PRIORITY=`eval sed -n -e "\"$SED_CMD\"" $TEMP` case "$PRIORITY" in ""|low|medium|high) CNT=`expr $CNT + 1` ;; *) echo "$COMMAND: \`$PRIORITY' is not a valid value for \`Priority'." esac # # 3) Class # PATTERN=">Class:" CLASS=`eval sed -n -e "\"$SED_CMD\"" $TEMP` case "$CLASS" in ""|sw-bug|doc-bug|change-request|support) CNT=`expr $CNT + 1` ;; *) echo "$COMMAND: \`$CLASS' is not a valid value for \`Class'." esac [ $CNT -lt 3 ] && echo "Errors were found with the problem report." while :; do $ECHON1 "a)bort, e)dit or s)end? $ECHON2" read input case "$input" in a*) echo "$COMMAND: problem report saved in $HOME/dead.glibcbug." cat $TEMP >> $HOME/dead.glibcbug xs=1; exit ;; e*) eval $EDIT $TEMP continue 2 ;; s*) break 2 ;; esac done done # # Remove comments and send the problem report # (we have to use patterns, where the comment contains regex chars) # # /^>Originator:/s;$ORIGINATOR;; sed -e " /^SEND-PR:/d /^>Organization:/,/^>[A-Za-z-]*:/s;$ORGANIZATION_C;; /^>Confidential:/s;<.*>;; /^>Synopsis:/s;$SYNOPSIS_C;; /^>Severity:/s;<.*>;; /^>Priority:/s;<.*>;; /^>Class:/s;<.*>;; /^>Release:/,/^>[A-Za-z-]*:/s;$RELEASE_C;; /^>Environment:/,/^>[A-Za-z-]*:/s;$ENVIRONMENT_C;; /^>Description:/,/^>[A-Za-z-]*:/s;$DESCRIPTION_C;; /^>How-To-Repeat:/,/^>[A-Za-z-]*:/s;$HOW_TO_REPEAT_C;; /^>Fix:/,/^>[A-Za-z-]*:/s;$FIX_C;; " $TEMP > $TEMP.x if $MAIL_AGENT < $TEMP.x; then echo "$COMMAND: problem report sent" xs=0; exit else echo "$COMMAND: mysterious mail failure, report not sent." echo "$COMMAND: problem report saved in $HOME/dead.glibcbug." cat $TEMP >> $HOME/dead.glibcbug fi exit 0