From: Michal Sojka Date: Sun, 12 Dec 2010 16:11:37 +0000 (+0100) Subject: Do not try to access the GW if it is not necessary X-Git-Tag: fix-allnoconfig~215 X-Git-Url: http://rtime.felk.cvut.cz/gitweb/can-benchmark.git/commitdiff_plain/f7411ff5b11065e770acfa158d227bbd49af7efd Do not try to access the GW if it is not necessary --- diff --git a/gw-tests/lib.sh b/gw-tests/lib.sh index a67a46e..fc12ade 100644 --- a/gw-tests/lib.sh +++ b/gw-tests/lib.sh @@ -33,6 +33,8 @@ PATH=$PWD/../_compiled/bin/:$PATH sshgw() { local socket="$HOME/.ssh/cangw-connection" + if [[ "$NO_GW_NEEDED" ]]; then return; fi + if [[ ! -S $socket ]] || ! ssh -x -a -S $socket root@192.168.2.3 true; then # Create master connection to speed up subsequenct command. ssh -N -f -M -S $socket root@192.168.2.3 >/dev/null 2>&1 @@ -111,25 +113,31 @@ _measure() { # Kill load generators left possibly from the past runs killall -q ping || : killall -q latester || : - sshgw 'killall -q hackbench || :' - # Set can interfaces up - sshgw 'for i in 0 1; do ip link show dev can$i|grep -q UP || ip link set can$i up type can bitrate 1000000; done' - # Delete all vcan interfaces - sshgw 'for dev in $(ip l|grep -o vcan[^:]\\+); do ip link del dev $dev; done' - # Reset priorities - sshgw 'if pid=`pidof irq/145-can0`; then chrt -p -f 50 $pid > /dev/null; fi' - sshgw 'if pid=`pidof irq/146-can1`; then chrt -p -f 50 $pid > /dev/null; fi' - sshgw 'if pid=`pidof sirq-net-rx/0`; then chrt -p -f 49 $pid > /dev/null; fi' - sshgw 'if pid=`pidof sirq-net-tx/0`; then chrt -p -f 49 $pid > /dev/null; fi' - # Set the length of qdisc queue to avoid ENOBUFS errors - ifconfig can0 txqueuelen 200 - ifconfig can1 txqueuelen 200 - cleanupgw - - type prepare >/dev/null 2>&1 && prepare || : - start_load + if [[ ! "$NO_GW_NEEDED" ]]; then + sshgw 'killall -q hackbench || :' + # Set can interfaces up + sshgw 'for i in 0 1; do ip link show dev can$i|grep -q UP || ip link set can$i up type can bitrate 1000000; done' + # Delete all vcan interfaces + sshgw 'for dev in $(ip l|grep -o vcan[^:]\\+); do ip link del dev $dev; done' + # Reset priorities + sshgw 'if pid=`pidof irq/145-can0`; then chrt -p -f 50 $pid > /dev/null; fi' + sshgw 'if pid=`pidof irq/146-can1`; then chrt -p -f 50 $pid > /dev/null; fi' + sshgw 'if pid=`pidof sirq-net-rx/0`; then chrt -p -f 49 $pid > /dev/null; fi' + sshgw 'if pid=`pidof sirq-net-tx/0`; then chrt -p -f 49 $pid > /dev/null; fi' + # Set the length of qdisc queue to avoid ENOBUFS errors + ifconfig can0 txqueuelen 200 + ifconfig can1 txqueuelen 200 + cleanupgw + + type prepare >/dev/null 2>&1 && prepare || : + start_load + fi + main - kill_load + + if [[ ! "$NO_GW_NEEDED" ]]; then + kill_load + fi # Create a plot script at the end to signalize that the # measurement was successfully finished