gve: allocate twice as many buf_states Increase the number of available buffers to match bare-metal testing. Increases the likelyhood of buffer reuse and reduce the need to allocate GPU pages from the gen_pool. Change-Id: I1f144f85f7fb4d4beb245d7d946d4f84d08e6013 Reviewed-on: https://cos-review.googlesource.com/c/third_party/kernel/+/57749 Reviewed-by: Brian Vazquez <brianvv@google.com> Tested-by: Mina Almasry <almasrymina@google.com> Reviewed-by: Neal Cardwell <ncardwell@google.com> Reviewed-by: Eric Dumazet <edumazet@google.com> Reviewed-by: Jeroen de Borst <jeroendb@google.com> (cherry picked from commit 1912b385431fc05d520091173190c57e5795937a)
diff --git a/drivers/net/ethernet/google/gve/gve_rx_dqo.c b/drivers/net/ethernet/google/gve/gve_rx_dqo.c index 9791856..fc2e8a40 100644 --- a/drivers/net/ethernet/google/gve/gve_rx_dqo.c +++ b/drivers/net/ethernet/google/gve/gve_rx_dqo.c
@@ -453,7 +453,7 @@ static int gve_rx_alloc_ring_dqo(struct gve_priv *priv, int idx) /* Allocate buf states */ rx->dqo.num_buf_states = priv->queue_format == GVE_DQO_RDA_FORMAT ? - min_t(s16, S16_MAX, buffer_queue_slots * 4) : + min_t(s16, S16_MAX, buffer_queue_slots * 8) : priv->rx_pages_per_qpl; #if LINUX_VERSION_CODE >= KERNEL_VERSION(4,18,0)