linux_dsm_epyc7002/drivers/net/ethernet/marvell
Marcin Wojtas a29b623556 net: mvneta: add BQL support
Tests showed that when whole bandwidth is consumed, the latency for
various kind of traffic can reach high values. With saturated
link (e.g. with iperf from target to host) simple ping could take
significant amount of time. BQL proved to improve this situation
when implemented in mvneta driver. Measurements of ping latency
for 3 link speeds:
Speed | Latency w/o BQL | Latency with BQL
10    |      7-14 ms    |     3.5 ms
100   |      2-12 ms    |     0.6 ms
1000  |   often timeout |   up to 2ms

Decreasing latency as above result in sligt performance cost - 4kpps
(-1.4%) when pushing 64B packets via two bridged interfaces of Armada 38x.
For 1500B packets in the same setup, the mpstat tool showed +8% of
CPU occupation (default affinity, second CPU idle). Even though this
cost seems reasonable to take, considering other improvements.

This commit adds byte queue limit mechanism for the mvneta driver.

Signed-off-by: Marcin Wojtas <mw@semihalf.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-01-16 20:07:29 -05:00
..
Kconfig net: mvneta: select GENERIC_ALLOCATOR 2016-12-10 17:27:53 -05:00
Makefile net: mvneta: bm: add support for hardware buffer management 2016-03-14 12:19:46 -04:00
mv643xx_eth.c net: mv643xx_eth: fix build failure 2016-12-17 21:47:26 -05:00
mvmdio.c net: mvmdio: do not clk_disable_unprepare() NULL clock 2016-10-03 02:03:27 -04:00
mvneta_bm.c net: mvneta: Fix lacking spinlock initialization 2016-05-25 12:35:08 -07:00
mvneta_bm.h net: mvneta: use IS_ENABLED() instead of checking for built-in or module 2016-09-12 20:27:59 -07:00
mvneta.c net: mvneta: add BQL support 2017-01-16 20:07:29 -05:00
mvpp2.c net: make ndo_get_stats64 a void function 2017-01-08 17:51:44 -05:00
pxa168_eth.c net: ethernet: marvell: pxa168_eth: Implement ethtool::nway_reset 2016-11-16 13:44:01 -05:00
skge.c skge: Rename LED_OFF and LED_ON in marvel skge driver to avoid conflicts with leds namespace 2016-10-18 11:56:30 -04:00
skge.h skge: Rename LED_OFF and LED_ON in marvel skge driver to avoid conflicts with leds namespace 2016-10-18 11:56:30 -04:00
sky2.c net: make ndo_get_stats64 a void function 2017-01-08 17:51:44 -05:00
sky2.h sky2: Receive Overflows not counted 2013-03-29 14:53:19 -04:00