linux/drivers/net/ethernet/broadcom
Nicolai Buchwitz 7bc054c2d4 net: bcmgenet: convert RX path to page_pool
Replace the per-packet __netdev_alloc_skb() + dma_map_single() in the
RX path with page_pool. SKBs are built from pool pages via
napi_build_skb() with skb_mark_for_recycle() so the network stack
returns pages to the pool, and DMA mapping happens once per page
instead of once per packet.

Reject HW-reported lengths smaller than the RSB so a runt cannot
underflow the SKB build path.

Drop the now-unused priv->rx_buf_len field and the rx_dma_failed soft
MIB counter (nothing increments it after the conversion). This
removes the "rx_dma_failed" entry from ethtool -S, which is a
user-visible change for monitoring tools that key on stat names.

Signed-off-by: Nicolai Buchwitz <nb@tipi-net.de>
Reviewed-by: Justin Chen <justin.chen@broadcom.com>
Tested-by: Justin Chen <justin.chen@broadcom.com>
Link: https://patch.msgid.link/20260610114835.2225423-1-nb@tipi-net.de
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2026-06-11 15:44:10 -07:00
..
asp2 net: bcmasp: Keep phy link during WoL sleep cycle 2026-05-08 16:38:56 -07:00
bnge bnge: fix context mem iteration 2026-06-05 18:35:50 -07:00
bnx2x bnx2x: fix resource leaks in bnx2x_init_one() error paths 2026-06-11 15:09:16 -07:00
bnxt Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2026-06-11 14:33:35 -07:00
genet net: bcmgenet: convert RX path to page_pool 2026-06-11 15:44:10 -07:00
b44.c net: b44: use ethtool_puts 2026-06-03 17:44:45 -07:00
b44.h
bcm63xx_enet.c Convert more 'alloc_obj' cases to default GFP_KERNEL arguments 2026-02-21 20:03:00 -08:00
bcm63xx_enet.h
bcm4908_enet.c Convert 'alloc_obj' family to use the new default GFP_KERNEL argument 2026-02-21 17:09:51 -08:00
bcm4908_enet.h
bcmsysport.c Convert more 'alloc_obj' cases to default GFP_KERNEL arguments 2026-02-21 20:03:00 -08:00
bcmsysport.h net: systemport: Move IO macros to header file 2024-10-28 15:54:37 -07:00
bgmac-bcma-mdio.c net: fill in MODULE_DESCRIPTION()s for Broadcom bgmac 2024-01-24 15:12:20 -08:00
bgmac-bcma.c net: fill in MODULE_DESCRIPTION()s for Broadcom bgmac 2024-01-24 15:12:20 -08:00
bgmac-platform.c net: ethernet: bgmac-platform: fix an OF node reference leak 2024-12-17 13:22:05 +01:00
bgmac.c net: phy: fixed_phy: remove irq argument from fixed_phy_register 2025-05-20 18:17:43 -07:00
bgmac.h bgmac: reduce max frame size to support just MTU 1500 2025-01-29 18:57:42 -08:00
bnx2_fw.h
bnx2.c net: Consistently define pci_device_ids using named initializers 2026-05-12 18:16:34 -07:00
bnx2.h bnx2: Drop redundant pci_enable_pcie_error_reporting() 2023-03-08 23:34:38 -08:00
cnic_defs.h
cnic_if.h cnic,bnx2,bnx2x: use UIO_MEM_DMA_COHERENT 2024-03-07 21:52:59 +00:00
cnic.c Convert more 'alloc_obj' cases to default GFP_KERNEL arguments 2026-02-21 20:03:00 -08:00
cnic.h net: cnic: Convert tasklet API to new bottom half workqueue mechanism 2024-07-31 18:59:46 -07:00
Kconfig net: bcmgenet: convert RX path to page_pool 2026-06-11 15:44:10 -07:00
Makefile bng_en: Add PCI interface 2025-07-07 18:54:00 -07:00
sb1250-mac.c Convert remaining multi-line kmalloc_obj/flex GFP_KERNEL uses 2026-02-22 08:26:33 -08:00
tg3.c tg3: Fix race for querying speed/duplex 2026-03-27 12:06:38 +00:00
tg3.h tg3: spelling corrections 2025-06-27 10:25:57 +01:00
unimac.h