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