i.MX8MM Ethernet TX Bandwidth Fluctuations

Tim Harvey tharvey at gateworks.com
Fri May 7 08:34:47 PDT 2021


On Thu, May 6, 2021 at 12:20 PM Adam Ford <aford173 at gmail.com> wrote:
>
> On Thu, May 6, 2021 at 9:51 AM Frieder Schrempf
> <frieder.schrempf at kontron.de> wrote:
> >
> > Hi,
> >
> > we observed some weird phenomenon with the Ethernet on our i.MX8M-Mini boards. It happens quite often that the measured bandwidth in TX direction drops from its expected/nominal value to something like 50% (for 100M) or ~67% (for 1G) connections.
> >
> > So far we reproduced this with two different hardware designs using two different PHYs (RGMII VSC8531 and RMII KSZ8081), two different kernel versions (v5.4 and v5.10) and link speeds of 100M and 1G.
> >
> > To measure the throughput we simply run iperf3 on the target (with a short p2p connection to the host PC) like this:
> >
> >         iperf3 -c 192.168.1.10 --bidir
> >
> > But even something more simple like this can be used to get the info (with 'nc -l -p 1122 > /dev/null' running on the host):
> >
> >         dd if=/dev/zero bs=10M count=1 | nc 192.168.1.10 1122
> >
> > The results fluctuate between each test run and are sometimes 'good' (e.g. ~90 MBit/s for 100M link) and sometimes 'bad' (e.g. ~45 MBit/s for 100M link).
> > There is nothing else running on the system in parallel. Some more info is also available in this post: [1].
> >
> > If there's anyone around who has an idea on what might be the reason for this, please let me know!
> > Or maybe someone would be willing to do a quick test on his own hardware. That would also be highly appreciated!
>
> I have seen a similar regression on linux-next on both Mini and Nano.
> I thought I broke something, but it returned to normal after a reboot.
>   However, with a 1Gb connection, I was running at ~450 Mbs which is
> consistent with what you were seeing with a 100Mb link.
>
> adam
>

Frieder,

I've noticed this as well on our designs with IMX8MN+DP83867 and
IMX8MM+KSZ9897S. I also notice it with IMX8MN+DP83867. I have noticed
it on all kernels I've tested and it appears to latch back and forth
every few times I run a 10s iperf3 between 50% and 100% line speed.

I have no idea what it is but glad you are asking and hope someone
knows how to fix it!

Best Regards,

Tim



More information about the linux-arm-kernel mailing list