. lib.sh
main() {
+ if [ "$kvers" = 3.0.4-rt14-00008-gb2052fd -a "$load" = eth ]; then echo "Skipping eth test"; SKIPPED=1; return; fi
+
sshgw cangw -A -s can0 -d can1
- sshgw 'chrt -p -f 99 `pidof irq/145-can0`'
- sshgw 'chrt -p -f 99 `pidof irq/146-can1`'
- sshgw 'chrt -p -f 98 `pidof sirq-net-rx/0`'
- sshgw 'chrt -p -f 98 `pidof sirq-net-tx/0`'
- latester -d can0 -d can1 -d can2 -o -c $COUNT -l 2 -h hist2.dat -f time2.dat
- latester -d can0 -d can1 -d can2 -o -c $COUNT -l 4 -h hist4.dat -f time4.dat
- latester -d can0 -d can1 -d can2 -o -c $COUNT -l 6 -h hist6.dat -f time6.dat
- latester -d can0 -d can1 -d can2 -o -c $COUNT -l 8 -h hist8.dat -f time8.dat
+ sshgw 'if pid=`pidof irq/145-can0`; then chrt -p -f 99 $pid; fi'
+ sshgw 'if pid=`pidof irq/146-can1`; then chrt -p -f 99 $pid; fi'
+
+ # Unfortunately, we must also increase FEC (Ethernet) IRQ priority
+ # to be above softirq. Otherwise the system crashes with eth load.
+ sshgw 'if pid=`pidof irq/192-mpc52xx`; then chrt -p -f 99 $pid; fi'
+ sshgw 'if pid=`pidof irq/193-mpc52xx`; then chrt -p -f 99 $pid; fi'
+
+ sshgw 'if pid=`pidof sirq-net-rx/0`; then chrt -p -f 98 $pid; fi'
+ sshgw 'if pid=`pidof sirq-net-tx/0`; then chrt -p -f 98 $pid; fi'
+ latester -d can0 -d can1 -d can2 -c $COUNT $(traffic_and_length 2) -n len2
+ latester -d can0 -d can1 -d can2 -c $COUNT $(traffic_and_length 4) -n len4
+ latester -d can0 -d can1 -d can2 -c $COUNT $(traffic_and_length 6) -n len6
+ latester -d can0 -d can1 -d can2 -c $COUNT $(traffic_and_length 8) -n len8
}
plot_cmds() {
cat <<EOF
-set title "Single GW, no modifications, no filters, high (soft)irq task priority"
-set logscale y
-set grid
-set xlabel "Time [{/Symbol m}s]"
+set title "Single GW rule for all messages, no modifications, high (soft)irq task priority"
+set logscale xy
+set grid xtics mxtics ytics mytics lw 1, lw 0.5
+set xlabel "Time [ms]"
set ylabel "Latency profile [messages]"
-plot [0:600] [1:$COUNT] \
- "hist2.dat" with lp lt 1 title "2 byte messages", \
- "hist4.dat" with lp lt 2 title "4 byte messages", \
- "hist6.dat" with lp lt 3 title "6 byte messages", \
- "hist8.dat" with lp lt 4 title "8 byte messages"
+plot [0.01:100] [1:$COUNT] \
+ "len2-hist.txt" with lp lt 1 title "2 byte messages", \
+ "len4-hist.txt" with lp lt 2 title "4 byte messages", \
+ "len6-hist.txt" with lp lt 3 title "6 byte messages", \
+ "len8-hist.txt" with lp lt 4 title "8 byte messages"
EOF
}