gve: implement DQO RX datapath and control path for AF_XDP zero-copy
authorJoshua Washington <joshwash@google.com>
Thu, 17 Jul 2025 15:28:39 +0000 (08:28 -0700)
committerPaolo Abeni <pabeni@redhat.com>
Tue, 22 Jul 2025 09:35:49 +0000 (11:35 +0200)
commitc1fffc5d66a7147d557736c2341a511e0896d9ff
tree7db3465e86938a89b9643ec9e609f5d26939dc15
parent2236836eab2629978e9777dbde83161f9c7b450b
gve: implement DQO RX datapath and control path for AF_XDP zero-copy

Add the RX datapath for AF_XDP zero-copy for DQ RDA. The RX path is
quite similar to that of the normal XDP case. Parallel methods are
introduced to properly handle XSKs instead of normal driver buffers.

To properly support posting from XSKs, queues are destroyed and
recreated, as the driver was initially making use of page pool buffers
instead of the XSK pool memory.

Expose support for AF_XDP zero-copy, as the TX and RX datapaths both
exist.

Reviewed-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: Praveen Kaligineedi <pkaligineedi@google.com>
Signed-off-by: Joshua Washington <joshwash@google.com>
Signed-off-by: Jeroen de Borst <jeroendb@google.com>
Link: https://patch.msgid.link/20250717152839.973004-6-jeroendb@google.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/ethernet/google/gve/gve.h
drivers/net/ethernet/google/gve/gve_buffer_mgmt_dqo.c
drivers/net/ethernet/google/gve/gve_main.c
drivers/net/ethernet/google/gve/gve_rx_dqo.c