summaryrefslogtreecommitdiff
path: root/net/switchdev/switchdev.c
diff options
context:
space:
mode:
authorJakub Kicinski <kuba@kernel.org>2024-11-08 19:51:19 -0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-03-22 12:54:12 -0700
commitf49bc4d7ff3dbb1f7438f8bb0054189f3f5bad23 (patch)
tree18f145a19e046f5a2c0ad94fd59f7f317ef89fae /net/switchdev/switchdev.c
parentf059a0fd733078c3832fd0f3a3037aa5975d3d36 (diff)
eth: bnxt: use page pool for head frags
[ Upstream commit 7ed816be35abc3d5bed39d3edc5f2efed2ca5216 ] Testing small size RPCs (300B-400B) on a large AMD system suggests that page pool recycling is very useful even for just the head frags. With this patch (and copy break disabled) I see a 30% performance improvement (82Gbps -> 106Gbps). Convert bnxt from normal page frags to page pool frags for head buffers. On systems with small page size we can use the same pool as for TPA pages. On systems with large pages the frag allocation logic of the page pool is already used to split a large page into TPA chunks. TPA chunks are much larger than heads (8k or 64k, AFAICT vs 1kB) and we always allocate the same sized chunks. Mixing allocation of TPA and head pages would lead to sub-optimal memory use. Plus Taehee's work on zero-copy / devmem will need to differentiate between TPA and non-TPA page pool, anyway. Conditionally allocate a new page pool for heads. Link: https://patch.msgid.link/20241109035119.3391864-1-kuba@kernel.org Signed-off-by: Jakub Kicinski <kuba@kernel.org> Stable-dep-of: 87dd2850835d ("eth: bnxt: fix memory leak in queue reset") Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'net/switchdev/switchdev.c')
0 files changed, 0 insertions, 0 deletions