mbox series

[net-next,0/4] tsnep: Throttle irq, rotten pkts, RX buffer alloc and ethtool_get_channels()

Message ID 20221117201440.21183-1-gerhard@engleder-embedded.com (mailing list archive)
Headers show
Series tsnep: Throttle irq, rotten pkts, RX buffer alloc and ethtool_get_channels() | expand

Message

Gerhard Engleder Nov. 17, 2022, 8:14 p.m. UTC
Collection of improvements found during development of XDP support.
Hopefully the last patch series before the XDP support.

Fix of rotten packets increased CPU load and caused slight drop of iperf
performance, because CPU load was already at 100% before. This performance
drop is compensated with interrupt throttling, which makes sense anyway.

ethtool_get_channels() is needed for automatic TAPRIO configuration in
combination with multiple queues.

Rework of RX buffer allocation is prework of XDP. It ensures that packets
are only dropped if RX queue would otherwise run empty because of
failed allocations. So it should reduce the number of dropped packets
under low memory conditions.

Gerhard Engleder (4):
  tsnep: Throttle interrupts
  tsnep: Fix rotten packets
  tsnep: Add ethtool get_channels support
  tsnep: Rework RX buffer allocation

 drivers/net/ethernet/engleder/tsnep.h         |   4 +
 drivers/net/ethernet/engleder/tsnep_ethtool.c |  19 ++
 drivers/net/ethernet/engleder/tsnep_hw.h      |   7 +
 drivers/net/ethernet/engleder/tsnep_main.c    | 252 +++++++++++++-----
 4 files changed, 214 insertions(+), 68 deletions(-)