[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20241007122458.282590-1-maciej.fijalkowski@intel.com>
Date: Mon, 7 Oct 2024 14:24:52 +0200
From: Maciej Fijalkowski <maciej.fijalkowski@...el.com>
To: bpf@...r.kernel.org,
ast@...nel.org,
daniel@...earbox.net,
andrii@...nel.org
Cc: netdev@...r.kernel.org,
magnus.karlsson@...el.com,
bjorn@...nel.org,
maciej.fijalkowski@...el.com,
vadfed@...a.com
Subject: [PATCH v2 bpf-next 0/6] xsk: struct diet and cleanups
Hi all,
this modest work brings back size of xdp_buff_xsk back to two cache
lines which in turn improves performance. Interestingly I was able to
observe on ice with HW rings sized to 512 around 12% better performance
when running xdpsock in l2fwd scenario. First three patches are behind
this. Other setups were not that impressive, I believe results may vary
based on the underlying CPU. Bottom line is that shrinking this struct
takes off a bit of work from CPU's shoulders.
Other three patches are rather cleanups.
Thanks,
Maciej
v1->v2:
* fix build issues on patch 1 (Daniel, CI)
* be smarter about xsk_buff_pool layout in patch 4 (Vadim)
Maciej Fijalkowski (6):
xsk: get rid of xdp_buff_xsk::xskb_list_node
xsk: s/free_list_node/list_node
xsk: get rid of xdp_buff_xsk::orig_addr
xsk: carry a copy of xdp_zc_max_segs within xsk_buff_pool
xsk: wrap duplicated code to function
xsk: use xsk_buff_pool directly for cq functions
include/net/xdp_sock_drv.h | 14 +++++-----
include/net/xsk_buff_pool.h | 23 +++++++++-------
net/xdp/xsk.c | 38 +++++++++++++-------------
net/xdp/xsk_buff_pool.c | 54 ++++++++++++++++++++-----------------
net/xdp/xsk_queue.h | 2 +-
5 files changed, 69 insertions(+), 62 deletions(-)
--
2.34.1
Powered by blists - more mailing lists