summary refs log tree commit diff stats
path: root/rust/qemu-api/src
diff options
context:
space:
mode:
authorDaniel Borkmann <daniel@iogearbox.net>2025-07-11 11:44:14 +0200
committerJason Wang <jasowang@redhat.com>2025-07-15 10:26:08 +0800
commitd38c5e0d0c206dc52421b8bb777cefdf47c13b7e (patch)
treea2d0ec3dc086ed64ebfd8f542e7d8b1ed669c2a3 /rust/qemu-api/src
parentda703b06a52bfb5fe1a77b0eddbb8d68d3f70762 (diff)
downloadfocaccia-qemu-d38c5e0d0c206dc52421b8bb777cefdf47c13b7e.tar.gz
focaccia-qemu-d38c5e0d0c206dc52421b8bb777cefdf47c13b7e.zip
net/af-xdp: Remove XDP program cleanup logic
There are two issues with the XDP program removal in af_xdp_cleanup():

1) Starting from libxdp 1.3.0 [0] the XDP program gets automatically
   detached when we call xsk_socket__delete() for the last successfully
   configured queue. libxdp internally keeps track of that. For QEMU
   we require libxdp >= 1.4.0. Given QEMU is not loading the program,
   lets also not attempt to remove it and delegate this instead.

2) The removal logic is incorrect anyway because we are setting n_queues
   into the last queue that never has xdp_flags on failure, so the logic
   is always skipped since the non-zero test for s->xdp_flags in
   af_xdp_cleanup() fails.

Fixes: cb039ef3d9e3 ("net: add initial support for AF_XDP network backend")
Suggested-by: Ilya Maximets <i.maximets@ovn.org>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Reviewed-by: Ilya Maximets <i.maximets@ovn.org>
Cc: Ilya Maximets <i.maximets@ovn.org>
Cc: Jason Wang <jasowang@redhat.com>
Cc: Anton Protopopov <aspsk@isovalent.com>
Link: https://github.com/xdp-project/xdp-tools/commit/38c2914988fd5c1ef65f2381fc8af9f3e8404e2b [0]
Signed-off-by: Jason Wang <jasowang@redhat.com>
Diffstat (limited to 'rust/qemu-api/src')
0 files changed, 0 insertions, 0 deletions