OSDN Git Service

gve: RX path for DQO-QPL
authorRushil Gupta <rushilg@google.com>
Fri, 4 Aug 2023 21:34:43 +0000 (21:34 +0000)
committerDavid S. Miller <davem@davemloft.net>
Sun, 6 Aug 2023 07:34:36 +0000 (08:34 +0100)
commite7075ab4fb6b39730dfbfbfa3a5505d678f01d2c
treea934e5b111865ca5f53d0f8c8e92c04689063b68
parenta6fb8d5a8b6925f1e635818d3dd2d89531d4a058
gve: RX path for DQO-QPL

The RX path allocates the QPL page pool at queue creation, and
tries to reuse these pages through page recycling. This patch
ensures that on refill no non-QPL pages are posted to the device.

When the driver is running low on free buffers, an ondemand
allocation step kicks in that allocates a non-qpl page for
SKB business to free up the QPL page in use.

gve_try_recycle_buf was moved to gve_rx_append_frags so that driver does
not attempt to mark buffer as used if a non-qpl page was allocated
ondemand.

Signed-off-by: Rushil Gupta <rushilg@google.com>
Reviewed-by: Willem de Bruijn <willemb@google.com>
Signed-off-by: Praveen Kaligineedi <pkaligineedi@google.com>
Signed-off-by: Bailey Forrest <bcf@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/google/gve/gve.h
drivers/net/ethernet/google/gve/gve_rx_dqo.c