diff options
author | Sieng Piaw Liew <liew.s.piaw@gmail.com> | 2021-01-06 17:42:05 +0300 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2021-01-07 23:39:53 +0300 |
commit | c4a207865e7ea310dc146ff4aa1b0aa0c78d3fe1 (patch) | |
tree | 05e4ca232fa8f79ddde505152778f5ffe4d47ab8 /drivers/net/ethernet/marvell | |
parent | 375281d3a6dcabaa98f489ee412aedca6d99dffb (diff) | |
download | linux-c4a207865e7ea310dc146ff4aa1b0aa0c78d3fe1.tar.xz |
bcm63xx_enet: alloc rx skb with NET_IP_ALIGN
Use netdev_alloc_skb_ip_align on newer SoCs with integrated switch
(enetsw) when refilling RX. Increases packet processing performance
by 30% (with netif_receive_skb_list).
Non-enetsw SoCs cannot function with the extra pad so continue to use
the regular netdev_alloc_skb.
Tested on BCM6328 320 MHz and iperf3 -M 512 to measure packet/sec
performance.
Before:
[ ID] Interval Transfer Bandwidth Retr
[ 4] 0.00-30.00 sec 120 MBytes 33.7 Mbits/sec 277 sender
[ 4] 0.00-30.00 sec 120 MBytes 33.5 Mbits/sec receiver
After (+netif_receive_skb_list):
[ 4] 0.00-30.00 sec 155 MBytes 43.3 Mbits/sec 354 sender
[ 4] 0.00-30.00 sec 154 MBytes 43.1 Mbits/sec receiver
Signed-off-by: Sieng Piaw Liew <liew.s.piaw@gmail.com>
Acked-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'drivers/net/ethernet/marvell')
0 files changed, 0 insertions, 0 deletions