diff options
author | Bjoern B. Brandenburg <bbb@cs.unc.edu> | 2008-12-09 12:31:54 -0500 |
---|---|---|
committer | Bjoern B. Brandenburg <bbb@cs.unc.edu> | 2008-12-09 12:31:54 -0500 |
commit | a1842e14f55a3230ae076aada09b56e6d6096b47 (patch) | |
tree | 598444a640d28c22b996d64e83862d79fea4c1e1 | |
parent | 45d187ab7cbd7cf34f2f3cb1d22aab8fe9cdad5a (diff) |
make st_trace more robust
-rwxr-xr-x | st_trace | 20 |
1 files changed, 13 insertions, 7 deletions
@@ -1,21 +1,27 @@ | |||
1 | #!/bin/bash | 1 | #!/bin/bash |
2 | 2 | ||
3 | FTCAT=ftcat | 3 | [ -z "$FTCAT" ] && FTCAT=ftcat |
4 | DEVICE=/home/litmus/log | 4 | [ -z "$FTDEV" ] && FTDEV=/home/litmus/log |
5 | 5 | ||
6 | # Setup up sched_trace tracing. | 6 | # Setup up sched_trace tracing. |
7 | 7 | ||
8 | # works for sparc64/x86 if no CPU is offline | 8 | # works for sparc64 and Intel x86 if all CPUs are online |
9 | NUM_CPUS=`egrep -c 'processor|online' /proc/cpuinfo` | 9 | NUM_CPUS=`egrep -c 'processor|online' /proc/cpuinfo` |
10 | 10 | ||
11 | ST_IDS="501 502 503 504 505 506 507 508 509" | 11 | ST_IDS="501 502 503 504 505 506 507 508 509" |
12 | 12 | ||
13 | TAG=$1 | 13 | TAG=$1 |
14 | 14 | PIDS="" | |
15 | for x in `seq 0 $(($NUM_CPUS - 1))` | 15 | for x in `seq 0 $(($NUM_CPUS - 1))` |
16 | do | 16 | do |
17 | echo -n "CPU $x: " | 17 | TARGET="st-${TAG}-${x}.bin" |
18 | $FTCAT "$DEVICE$x" $ST_IDS > st${TAG}${x}.bin & | 18 | echo -n "CPU $x: " |
19 | echo $! "[$?]" | 19 | $FTCAT "$FTDEV$x" $ST_IDS > "$TARGET" & |
20 | PIDS="$PIDS $!" | ||
21 | echo $! "> $TARGET [$?]" | ||
20 | done | 22 | done |
21 | 23 | ||
24 | echo "Press Enter to end tracing..." | ||
25 | read | ||
26 | kill $PIDS | ||
27 | wait $PIDS | ||