linux/drivers/net/ethernet
Magnus Karlsson 6aab0bb0c5 i40e: Use the xsk batched rx allocation interface
Use the new xsk batched rx allocation interface for the zero-copy data
path. As the array of struct xdp_buff pointers kept by the driver is
really a ring that wraps, the allocation routine is modified to detect
a wrap and in that case call the allocation function twice. The
allocation function cannot deal with wrapped rings, only arrays. As we
now know exactly how many buffers we get and that there is no
wrapping, the allocation function can be simplified even more as all
if-statements in the allocation loop can be removed, improving
performance.

Signed-off-by: Magnus Karlsson <magnus.karlsson@intel.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Link: https://lore.kernel.org/bpf/20210922075613.12186-6-magnus.karlsson@gmail.com
2021-09-28 00:18:35 +02:00
..
3com 3com 3c515: make it compile on 64-bit architectures 2021-09-16 11:14:47 -07:00
8390 ne2000: fix unused function warning 2021-09-08 11:45:06 +01:00
actions net: ethernet: actions: Add helper dependency on COMPILE_TEST 2021-08-25 12:06:53 +01:00
adaptec
aeroflex
agere
alacritech
allwinner
alteon
altera
amazon ethtool: extend coalesce setting uAPI with CQE mode 2021-08-24 07:38:29 -07:00
amd net: ni65: Avoid typecast of pointer to u32 2021-09-09 11:21:19 +01:00
apm xgene-v2: Fix a resource leak in the error handling path of 'xge_probe()' 2021-08-23 11:23:48 +01:00
apple
aquantia Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-08-31 09:06:04 -07:00
arc net: arc_emac: Make use of the helper function dev_err_probe() 2021-09-16 13:35:35 +01:00
atheros net: atl1e: Make use of the helper function dev_err_probe() 2021-09-16 13:35:35 +01:00
broadcom Networking fixes for 5.15-rc2, including fixes from bpf. 2021-09-16 13:05:42 -07:00
brocade ethtool: extend coalesce setting uAPI with CQE mode 2021-08-24 07:38:29 -07:00
cadence net: macb: fix use after free on rmmod 2021-09-09 10:55:44 +01:00
calxeda
cavium Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-09-16 13:58:38 -07:00
chelsio Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-09-16 13:58:38 -07:00
cirrus net: cs89x0: disable compile testing on powerpc 2021-09-03 13:42:27 +01:00
cisco ethtool: extend coalesce setting uAPI with CQE mode 2021-08-24 07:38:29 -07:00
cortina ethtool: extend coalesce setting uAPI with CQE mode 2021-08-24 07:38:29 -07:00
davicom
dec tulip: Remove deadcode on startup true condition 2021-08-07 09:39:54 +01:00
dlink
emulex ethtool: extend coalesce setting uAPI with CQE mode 2021-08-24 07:38:29 -07:00
ezchip
faraday
freescale net: enetc: Make use of the helper function dev_err_probe() 2021-09-16 13:35:35 +01:00
fujitsu
google
hisilicon Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-09-16 13:58:38 -07:00
huawei net: hinic: Make use of the helper function dev_err_probe() 2021-09-16 13:35:35 +01:00
i825xx net: i825xx: Use absolute_pointer for memcpy from fixed memory location 2021-09-15 12:04:28 -07:00
ibm Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-09-16 13:58:38 -07:00
intel i40e: Use the xsk batched rx allocation interface 2021-09-28 00:18:35 +02:00
litex net: Add depends on OF_NET for LiteX's LiteETH 2021-08-31 08:36:38 -07:00
marvell octeontx2-af: Remove redundant initialization of variable blkaddr 2021-09-17 14:00:51 +01:00
mediatek
mellanox Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-09-16 13:58:38 -07:00
micrel
microchip net: microchip: encx24j600: drop unneeded MODULE_ALIAS 2021-09-17 14:21:00 +01:00
microsoft net: mana: Prefer struct_size over open coded arithmetic 2021-09-12 10:49:21 +01:00
moxa
mscc net: mscc: ocelot: use helpers for port VLAN membership 2021-08-20 14:39:52 +01:00
myricom ethtool: extend coalesce setting uAPI with CQE mode 2021-08-24 07:38:29 -07:00
natsemi Driver core update for 5.15-rc1 2021-09-01 08:44:42 -07:00
neterion Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-08-05 15:08:47 -07:00
netronome Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-09-16 13:58:38 -07:00
ni net/mlxbf_gige: Make use of devm_platform_ioremap_resourcexxx() 2021-08-31 12:08:05 +01:00
nvidia forcedeth: switch from 'pci_' to 'dma_' API 2021-08-23 11:56:57 +01:00
nxp
oki-semi net: pch_gbe: remove mii_ethtool_gset() error handling 2021-08-19 13:06:53 +01:00
packetengines
pasemi net: pasemi: Remove usage of the deprecated "pci-dma-compat.h" API 2021-08-30 20:30:51 -07:00
pensando ionic: fix a sleeping in atomic bug 2021-09-03 16:16:51 -07:00
qlogic Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-09-16 13:58:38 -07:00
qualcomm net: qcom/emac: Replace strlcpy with strscpy 2021-09-06 16:43:17 +01:00
rdc r6040: Restore MDIO clock frequency after MAC reset 2021-09-10 10:00:08 +01:00
realtek r8169: remove support for chip version RTL_GIGA_MAC_VER_27 2021-09-14 14:13:58 +01:00
renesas net: renesas: sh_eth: Fix freeing wrong tx descriptor 2021-09-07 14:02:02 +01:00
rocker Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2021-08-13 06:41:22 -07:00
samsung ethtool: extend coalesce setting uAPI with CQE mode 2021-08-24 07:38:29 -07:00
seeq
sfc Networking fixes for 5.15-rc2, including fixes from bpf. 2021-09-16 13:05:42 -07:00
sgi
silan
sis
smsc drivers: net: smc911x: clean up inconsistent indenting 2021-09-03 11:51:26 +01:00
socionext net: netsec: Make use of the helper function dev_err_probe() 2021-09-17 09:42:29 +01:00
stmicro net: stmmac: dwmac-visconti: Make use of the helper function dev_err_probe() 2021-09-17 14:02:40 +01:00
sun niu: switch from 'pci_' to 'dma_' API 2021-08-29 10:50:24 +01:00
synopsys ethtool: extend coalesce setting uAPI with CQE mode 2021-08-24 07:38:29 -07:00
tehuti ethtool: extend coalesce setting uAPI with CQE mode 2021-08-24 07:38:29 -07:00
ti ethtool: extend coalesce setting uAPI with CQE mode 2021-08-24 07:38:29 -07:00
toshiba net: spider_net: switch from 'pci_' to 'dma_' API 2021-08-29 10:50:24 +01:00
tundra
via ethtool: extend coalesce setting uAPI with CQE mode 2021-08-24 07:38:29 -07:00
wiznet net: w5100: check return value after calling platform_get_resource() 2021-08-31 12:08:42 +01:00
xilinx ethtool: extend coalesce setting uAPI with CQE mode 2021-08-24 07:38:29 -07:00
xircom
xscale net: ixp46x: Remove duplicate include of module.h 2021-09-01 11:40:22 +01:00
dnet.c
dnet.h
ec_bhf.c net: ec_bhf: switch from 'pci_' to 'dma_' API 2021-08-23 11:56:57 +01:00
ethoc.c net: ethoc: Make use of the helper function dev_err_probe() 2021-09-16 13:35:35 +01:00
fealnx.c
jme.c ethtool: extend coalesce setting uAPI with CQE mode 2021-08-24 07:38:29 -07:00
jme.h
Kconfig net: Add driver for LiteX's LiteETH network interface 2021-08-26 12:13:52 +01:00
korina.c
lantiq_etop.c net: lantiq: configure the burst length in ethernet drivers 2021-09-15 11:02:01 +01:00
lantiq_xrx200.c net: lantiq: configure the burst length in ethernet drivers 2021-09-15 11:02:01 +01:00
Makefile net: Add driver for LiteX's LiteETH network interface 2021-08-26 12:13:52 +01:00