net: ena: Use tx_ring instead of xdp_ring for XDP channel TX
authorDavid Arinzon <darinzon@amazon.com>
Mon, 1 Jan 2024 19:08:49 +0000 (19:08 +0000)
committerJakub Kicinski <kuba@kernel.org>
Thu, 4 Jan 2024 02:00:57 +0000 (18:00 -0800)
commit911a8c960110b03ed519ce43ea6c9990a0ee0ceb
tree19f9f95fdf2397404602fd06093fe97001bfb62b
parent23ec97498026f57793be1f76c4e78b494911db1a
net: ena: Use tx_ring instead of xdp_ring for XDP channel TX

When an XDP program is loaded the existing channels in the driver split
into two halves:
- The first half of the channels contain RX and TX rings, these queues
  are used for receiving traffic and sending packets originating from
  kernel.
- The second half of the channels contain only a TX ring. These queues
  are used for sending packets that were redirected using XDP_TX
  or XDP_REDIRECT.

Referring to the queues in the second half of the channels as "xdp_ring"
can be confusing and may give the impression that ENA has the capability
to generate an additional special queue.

This patch ensures that the xdp_ring field is exclusively used to
describe the XDP TX queue that a specific RX queue needs to utilize when
forwarding packets with XDP TX and XDP REDIRECT, preserving the
integrity of the xdp_ring field in ena_ring.

Signed-off-by: Shay Agroskin <shayagr@amazon.com>
Signed-off-by: David Arinzon <darinzon@amazon.com>
Link: https://lore.kernel.org/r/20240101190855.18739-6-darinzon@amazon.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/amazon/ena/ena_netdev.c
drivers/net/ethernet/amazon/ena/ena_netdev.h
drivers/net/ethernet/amazon/ena/ena_xdp.c
drivers/net/ethernet/amazon/ena/ena_xdp.h