diff options
| author | Tejun Heo <tj@kernel.org> | 2015-11-03 17:29:03 -0500 |
|---|---|---|
| committer | Tejun Heo <tj@kernel.org> | 2015-11-03 17:29:03 -0500 |
| commit | 159b5bb46492e4dcef2070b12861030bc360402b (patch) | |
| tree | 93de7d6e94a059aade50ee5437de6a50ccd1cf7b /scripts/stackusage | |
| parent | 56e74338a535cbcc2f2da08b1ea1a92920194364 (diff) | |
| parent | 469eabb3aec03d9defed3462df743a223a5c8f54 (diff) | |
| download | cachepc-linux-159b5bb46492e4dcef2070b12861030bc360402b.tar.gz cachepc-linux-159b5bb46492e4dcef2070b12861030bc360402b.zip | |
Merge branch 'for-4.3-fixes' into for-4.4
Diffstat (limited to 'scripts/stackusage')
| -rwxr-xr-x | scripts/stackusage | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/scripts/stackusage b/scripts/stackusage new file mode 100755 index 000000000000..8cf26640ef8a --- /dev/null +++ b/scripts/stackusage @@ -0,0 +1,33 @@ +#!/bin/sh + +outfile="" +now=`date +%s` + +while [ $# -gt 0 ] +do + case "$1" in + -o) + outfile="$2" + shift 2;; + -h) + echo "usage: $0 [-o outfile] <make options/args>" + exit 0;; + *) break;; + esac +done + +if [ -z "$outfile" ] +then + outfile=`mktemp --tmpdir stackusage.$$.XXXX` +fi + +KCFLAGS="${KCFLAGS} -fstack-usage" make "$@" + +# Prepend directory name to file names, remove column information, +# make file:line/function/size/type properly tab-separated. +find . -name '*.su' -newermt "@${now}" -print | \ + xargs perl -MFile::Basename -pe \ + '$d = dirname($ARGV); s#([^:]+:[0-9]+):[0-9]+:#$d/$1\t#;' | \ + sort -k3,3nr > "${outfile}" + +echo "$0: output written to ${outfile}" |
