11 while [ "${1#-}" != "$1" ]; do
19 dirs=oneatatime.ftrace
24 for i in ${!dirs[*]}; do
25 args[$i]=-p${dirs[$i]}
36 methods=${@:-rtems kernel read-write readnb-write readnb-mmap read-mmap mmap-write mmap-mmap mmapbusy-write mmapbusy-mmap readbusy-write readbusynoirq-write mmsg-mmsg}
39 for method in $methods; do
41 rtems) ../../rtems/gw/boot --expect-raw '"]", sub { shift->send_slow(0.1, "startGW\n"); }' --exiton 'tasks started';;
42 kernel) ../ppc/boot -a kernelgw --exiton "Kernel GW started";;
43 read-write) ../ppc/boot --exiton "UGW started";;
44 readnb-write) ../ppc/boot -a "ugw=|-n|" --exiton "UGW started";;
45 readnb-mmap) ../ppc/boot -a "ugw=|-n -t mmap|" --exiton "UGW started";;
46 read-mmap) ../ppc/boot -a "ugw=|-t mmap|" --exiton "UGW started";;
47 mmap-write) ../ppc/boot -a "ugw=|-r mmap|" --exiton "UGW started";;
48 mmap-mmap) ../ppc/boot -a "ugw=|-r mmap -t mmap|" --exiton "UGW started";;
49 mmapbusy-write) ../ppc/boot -a "ugw=|-r mmapbusy|" --exiton "UGW started";;
50 mmapbusy-mmap) ../ppc/boot -a "ugw=|-r mmapbusy -t mmap|" --exiton "UGW started";;
51 readbusy-write) ../ppc/boot -a "ugw=|-b 300|" --exiton "UGW started";;
52 readbusynoirq-write) ../ppc/boot -a "ugw=|-b 300|" --kernel uImage.noirq --exiton "UGW started";;
53 mmsg-mmsg) ../ppc/boot -a "ugw=|-r mmsg -t mmsg|" --exiton "UGW started";;
55 echo >&2 "Unknown method '$method'";
59 for i in ${!dirs[*]}; do
63 ssh glab "sudo ip l set eth0 down; sudo ~/bin/latester -d can0 -d can1 -d can2 -c 3200 -q -n $method $arg; r=\$?; sudo ip l set eth0 up; exit \$r"
65 scp glab:"$method-*.txt" $dir
66 (cd $dir && ln -sf ../Makefile ../plot.gp ../preprocess.m .)
69 sleep 2 # Wait for cu at glab to die
72 if [ ${#dirs[*]} -gt 1 ]; then
73 for d in ${dirs[@]}; do