[PATCH net-next v1 0/6] lan743x speed boost

From: Sven Van Asbroeck
Date: Fri Jan 29 2021 - 14:54:04 EST


From: Sven Van Asbroeck <thesven73@xxxxxxxxx>

The first patch of this series boosts the chip's rx performance by up to 3x
on cpus such as ARM. However it introduces a breaking change: the mtu
can no longer be changed while the network interface is up.

To get around this efficiently, the second patch adds driver support for
multi-buffer frames. This will allow us to change the mtu while the device
is up, without having to re-allocate all ring buffers.

Since this is an important change to the driver's rx logic, I have attempted
to very carefully test this. Test descriptions are included with each
commit message.

I invite all interested users of the lan743x to test out these changes, either
by testing them out "in the real world", or by repeating my artificial tests.

Suggestions for better tests are very welcome.

Tree: git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next.git # 46eb3c108fe1

To: Bryan Whitehead <bryan.whitehead@xxxxxxxxxxxxx>
To: UNGLinuxDriver@xxxxxxxxxxxxx
To: "David S. Miller" <davem@xxxxxxxxxxxxx>
To: Jakub Kicinski <kuba@xxxxxxxxxx>
Cc: Andrew Lunn <andrew@xxxxxxx>
Cc: Alexey Denisov <rtgbnm@xxxxxxxxx>
Cc: Sergej Bauer <sbauer@xxxxxxxxxxx>
Cc: Tim Harvey <tharvey@xxxxxxxxxxxxx>
Cc: Anders Rønningen <anders@xxxxxxxxxxxxxxxxx>
Cc: netdev@xxxxxxxxxxxxxxx
Cc: linux-kernel@xxxxxxxxxxxxxxx (open list)

Sven Van Asbroeck (6):
lan743x: boost performance on cpu archs w/o dma cache snooping
lan743x: support rx multi-buffer packets
lan743x: allow mtu change while network interface is up
TEST ONLY: lan743x: limit rx ring buffer size to 500 bytes
TEST ONLY: lan743x: skb_alloc failure test
TEST ONLY: lan743x: skb_trim failure test

drivers/net/ethernet/microchip/lan743x_main.c | 324 ++++++++----------
drivers/net/ethernet/microchip/lan743x_main.h | 2 +
2 files changed, 152 insertions(+), 174 deletions(-)

--
2.17.1