Hi all,
We are using Beaglebone blacks as a starter for an AM335X-based design, I am having issues with 10MB/s Ethernet packets dropping out on Beaglebone black dev kits when sending traffic in both directions.
Is there a configuration option or kernel patch(?) I am missing?
I am using the meta-ti layer with the linux-ti-staging kernel v3.14 (more details near the end of the post).
To get the issue I am seeing to occur:
-Set both ports on the PC and beaglebone to advertise only 10MB/s FD with ethtool:
ethtool -s eth<X> speed 10 duplex full autoneg on
- running iperf server on the Beaglebone:
iperf -s -u -i 1
- running iperf client on my PC:
iperf -c 192.168.7.2 -b 64000 -i 1 -t 600 -d
The issue I am seeing is (as reported on the beaglebone via the debug serial port ttyO0)
where no packets were received on the beaglebone from 220 seconds until 247 seconds:
root@beaglebone:~# iperf -s -u -i 1
------------------------------------------------------------
Server listening on UDP port 5001
Receiving 1470 byte datagrams
UDP buffer size: 160 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.7.2 port 5001 connected with 192.168.7.10 port 38424
------------------------------------------------------------
Client connecting to 192.168.7.10, UDP port 5001
Sending 1470 byte datagrams
UDP buffer size: 160 KByte (default)
------------------------------------------------------------
[ 5] local 192.168.7.2 port 52644 connected with 192.168.7.10 port 5001
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 3] 0.0- 1.0 sec 7.18 KBytes 58.8 Kbits/sec 0.009 ms 0/ 5 (0%)
<<<snip>>>
[ 3] 215.0-216.0 sec 7.18 KBytes 58.8 Kbits/sec 0.031 ms 0/ 5 (0%)
[ 5] 215.0-216.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 3] 216.0-217.0 sec 7.18 KBytes 58.8 Kbits/sec 0.027 ms 0/ 5 (0%)
[ 5] 216.0-217.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 5] 217.0-218.0 sec 8.61 KBytes 70.6 Kbits/sec
[ 3] 217.0-218.0 sec 8.61 KBytes 70.6 Kbits/sec 0.038 ms 0/ 6 (0%)
[ 5] 218.0-219.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 3] 218.0-219.0 sec 5.74 KBytes 47.0 Kbits/sec 0.075 ms 0/ 4 (0%)
[ 5] 219.0-220.0 sec 8.61 KBytes 70.6 Kbits/sec
[ 5] 220.0-221.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 5] 221.0-222.0 sec 8.61 KBytes 70.6 Kbits/sec
[ 5] 222.0-223.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 5] 223.0-224.0 sec 8.61 KBytes 70.6 Kbits/sec
[ 5] 224.0-225.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 5] 225.0-226.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 5] 226.0-227.0 sec 8.61 KBytes 70.6 Kbits/sec
[ 5] 227.0-228.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 5] 228.0-229.0 sec 8.61 KBytes 70.6 Kbits/sec
[ 5] 229.0-230.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 5] 230.0-231.0 sec 8.61 KBytes 70.6 Kbits/sec
[ 5] 231.0-232.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 5] 232.0-233.0 sec 8.61 KBytes 70.6 Kbits/sec
[ 5] 233.0-234.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 5] 234.0-235.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 5] 235.0-236.0 sec 8.61 KBytes 70.6 Kbits/sec
[ 5] 236.0-237.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 5] 237.0-238.0 sec 8.61 KBytes 70.6 Kbits/sec
[ 5] 238.0-239.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 5] 239.0-240.0 sec 8.61 KBytes 70.6 Kbits/sec
[ 5] 240.0-241.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 5] 241.0-242.0 sec 8.61 KBytes 70.6 Kbits/sec
[ 5] 242.0-243.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 5] 243.0-244.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 5] 244.0-245.0 sec 8.61 KBytes 70.6 Kbits/sec
[ 5] 245.0-246.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 5] 246.0-247.0 sec 8.61 KBytes 70.6 Kbits/sec
[ 3] 219.0-220.0 sec 1.44 KBytes 11.8 Kbits/sec 0.079 ms 5/ 6 (83%)
[ 3] 220.0-221.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 221.0-222.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 222.0-223.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 223.0-224.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 224.0-225.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 225.0-226.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 226.0-227.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 227.0-228.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 228.0-229.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 229.0-230.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 230.0-231.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 231.0-232.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 232.0-233.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 233.0-234.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 234.0-235.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 235.0-236.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 236.0-237.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 237.0-238.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 238.0-239.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 239.0-240.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 240.0-241.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 241.0-242.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 242.0-243.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 243.0-244.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 244.0-245.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 245.0-246.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 3] 246.0-247.0 sec 0.00 Bytes 0.00 bits/sec 0.079 ms 0/ 0 (nan%)
[ 5] 247.0-248.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 3] 247.0-248.0 sec 1.44 KBytes 11.8 Kbits/sec 0.150 ms 151/ 152 (99%)
[ 5] 248.0-249.0 sec 8.61 KBytes 70.6 Kbits/sec
[ 3] 248.0-249.0 sec 1.44 KBytes 11.8 Kbits/sec 0.144 ms 4/ 5 (80%)
[ 5] 249.0-250.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 3] 249.0-250.0 sec 5.74 KBytes 47.0 Kbits/sec 0.121 ms 3/ 7 (43%)
[ 3] 250.0-251.0 sec 4.31 KBytes 35.3 Kbits/sec 0.102 ms 2/ 5 (40%)
[ 5] 250.0-251.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 3] 251.0-252.0 sec 8.61 KBytes 70.6 Kbits/sec 0.074 ms 0/ 6 (0%)
[ 5] 251.0-252.0 sec 8.61 KBytes 70.6 Kbits/sec
[ 3] 252.0-253.0 sec 7.18 KBytes 58.8 Kbits/sec 0.064 ms 0/ 5 (0%)
[ 5] 252.0-253.0 sec 7.18 KBytes 58.8 Kbits/sec
[ 5] 253.0-254.0 sec 8.61 KBytes 70.6 Kbits/sec
[ 3] 253.0-254.0 sec 8.61 KBytes 70.6 Kbits/sec 0.053 ms 0/ 6 (0%)
<<<snip>>>
[ 5] 0.0-600.3 sec 4.58 MBytes 64.0 Kbits/sec
[ 5] Sent 3267 datagrams
[ 5] Server Report:
[ 5] 0.0-600.3 sec 4.58 MBytes 64.0 Kbits/sec 0.051 ms 0/ 3267 (0%)
[ 3] 0.0-600.3 sec 4.35 MBytes 60.7 Kbits/sec 0.061 ms 166/ 3267 (5.1%)
Full logs from both my PC and the Beaglebone, and Wireshark in attached files.
There are no packets missed by my PC, but I have to run the test is bi-directional mode ('-d' option) to see the issue.
I have tried different data rates both faster and slower but the issue persists, the issue also occurs with TCP based tests (omitting the '-u' option from both command lines) where the test simply blocks until the connection is restored.
There are no errors (or any messages at all) reported via dmesg for the duration of the test.
I am building the OS via Yocto and have reduced the setup to a basic system with
- poky, git rev: "daisy:a4d8015687cf9ddd6ef563e29cf840698f81c099"
- meta-openembedded, git rev: "daisy:662cf409c1175450699d498085f3c894e0fe81d0"
- meta-ti, git rev: "daisy:df04699e3aae0ccfa88369117d6d20a9b46a6b26"
I have attached the only files I have modified for my setup:
- /opt/r2/ethernet-issue/poky/build/conf/bblayers.conf
- /opt/r2/ethernet-issue/poky/build/conf/local.conf
- /opt/r2/ethernet-issue/poky/meta/recipes-core/images/core-image-minimal.bb.