linux-stable/drivers/net/ethernet/freescale
Wei Fang af6f479138 net: fec: improve XDP_TX performance
As suggested by Jesper and Alexander, we can avoid converting xdp_buff
to xdp_frame in case of XDP_TX to save a bunch of CPU cycles, so that
we can further improve the XDP_TX performance.

Before this patch on i.MX8MP-EVK board, the performance shows as follows.
root@imx8mpevk:~# ./xdp2 eth0
proto 17:     353918 pkt/s
proto 17:     352923 pkt/s
proto 17:     353900 pkt/s
proto 17:     352672 pkt/s
proto 17:     353912 pkt/s
proto 17:     354219 pkt/s

After applying this patch, the performance is improved.
root@imx8mpevk:~# ./xdp2 eth0
proto 17:     369261 pkt/s
proto 17:     369267 pkt/s
proto 17:     369206 pkt/s
proto 17:     369214 pkt/s
proto 17:     369126 pkt/s
proto 17:     369272 pkt/s

Signed-off-by: Wei Fang <wei.fang@nxp.com>
Suggested-by: Alexander Lobakin <aleksander.lobakin@intel.com>
Suggested-by: Jesper Dangaard Brouer <hawk@kernel.org>
Reviewed-by: Jesper Dangaard Brouer <hawk@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2023-08-16 07:12:39 +01:00
..
dpaa eth: dpaa: add missing net/xdp.h include 2023-08-03 16:17:34 -07:00
dpaa2 net: dpaa2-switch: Remove redundant initialization owner in dpaa2_switch_drv 2023-08-07 19:18:23 -07:00
enetc Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2023-08-10 14:10:53 -07:00
fman net: Remove duplicated include in mac.c 2023-08-02 11:42:47 +01:00
fs_enet net: fs_enet: Use cpm_muram_xxx() functions instead of cpm_dpxxx() macros 2023-08-08 15:01:36 -07:00
fec.h net: fec: improve XDP_TX performance 2023-08-16 07:12:39 +01:00
fec_main.c net: fec: improve XDP_TX performance 2023-08-16 07:12:39 +01:00
fec_mpc52xx.c net: Explicitly include correct DT includes 2023-07-27 20:33:16 -07:00
fec_mpc52xx.h
fec_mpc52xx_phy.c net: Explicitly include correct DT includes 2023-07-27 20:33:16 -07:00
fec_ptp.c net: fec: delete fec_ptp_disable_hwts() 2023-08-02 19:11:06 -07:00
fsl_pq_mdio.c net: Explicitly include correct DT includes 2023-07-27 20:33:16 -07:00
gianfar.c net: Explicitly include correct DT includes 2023-07-27 20:33:16 -07:00
gianfar.h eth: gfar: remove a copy of the NAPI_POLL_WEIGHT define 2022-04-29 11:56:42 +01:00
gianfar_ethtool.c net: Explicitly include correct DT includes 2023-07-27 20:33:16 -07:00
Kconfig net: fec: allow to build without PAGE_POOL_STATS 2023-06-20 12:11:59 -07:00
Makefile
ucc_geth.c net: Explicitly include correct DT includes 2023-07-27 20:33:16 -07:00
ucc_geth.h
ucc_geth_ethtool.c net: ethernet: move from strlcpy with unused retval to strscpy 2022-08-31 14:11:26 -07:00
xgmac_mdio.c net: Explicitly include correct DT includes 2023-07-27 20:33:16 -07:00