X-Git-Url: http://rtime.felk.cvut.cz/gitweb/can-benchmark.git/blobdiff_plain/af435eda452d44e275d769617f57900877164ed6..0d33c2e1156b523b8fea545e8ae1448bd50b8abb:/gw-tests/lib.sh diff --git a/gw-tests/lib.sh b/gw-tests/lib.sh index 003782d..c6bf93f 100644 --- a/gw-tests/lib.sh +++ b/gw-tests/lib.sh @@ -5,6 +5,7 @@ while [ $# -gt 0 ]; do -P) OPT_PLOT_DISABLE=1; shift;; -p) OPT_PLOT_ONLY=1; shift;; -X|--no-x11-plot) OPT_NO_X11=1; shift;; + -t) OPT_TRAFFIC=$2; shift 2;; esac done @@ -70,6 +71,17 @@ echo_plot() { echo -n " " $plot } +traffic_and_length() { + local opts + case $OPT_TRAFFIC in + all) error "Bug in the test script - traffic cannot be 'all' here.";; + flood|100) opts='';; + 50) opts="-p $((2*(44+$1*8)))";; + *) opts="-o";; + esac + echo $opts -l $1 +} + _run() { if [[ ! "$OPT_PLOT_ONLY" ]]; then kernel_versions=$(sshgw uname -r) @@ -88,12 +100,19 @@ _run() { 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 'chrt -p -f 50 `pidof irq/145-can0` > /dev/null || :' + sshgw 'chrt -p -f 50 `pidof irq/146-can1` > /dev/null || :' + sshgw 'chrt -p -f 49 `pidof sirq-net-rx/0` > /dev/null || :' + sshgw 'chrt -p -f 49 `pidof sirq-net-tx/0` > /dev/null || :' cleanupgw main cp $script . fi - _plot + if [[ ! "$OPT_PLOT_DISABLE" ]]; then + _plot + fi done } @@ -112,7 +131,7 @@ _myexit() { error "bug in the test script: No test_end called" fi if ! test -n "$exit_ok"; then - error "FATAL: Command '$cmd' exited with code $code" + error "FATAL: Command '$cmd' exit with code $code" fi }