From: Mark Blasko <[email protected]> Replace default_num_queues with separate default_tx_num_queues and default_rx_num_queues fields in struct gve_priv. Update AdminQ device description and queue initialization logic to use the per-direction default queue counts.
Signed-off-by: Mark Blasko <[email protected]> Signed-off-by: Joshua Washington <[email protected]> --- drivers/net/gve/base/gve_adminq.c | 4 ++-- drivers/net/gve/gve_ethdev.c | 8 ++++---- drivers/net/gve/gve_ethdev.h | 3 ++- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/drivers/net/gve/base/gve_adminq.c b/drivers/net/gve/base/gve_adminq.c index 74b9a0125c..4dd095880d 100644 --- a/drivers/net/gve/base/gve_adminq.c +++ b/drivers/net/gve/base/gve_adminq.c @@ -1083,8 +1083,8 @@ int gve_adminq_describe_device(struct gve_priv *priv) PMD_DRV_LOG(INFO, "MAC addr: " RTE_ETHER_ADDR_PRT_FMT, RTE_ETHER_ADDR_BYTES(&priv->dev_addr)); priv->tx_pages_per_qpl = be16_to_cpu(descriptor->tx_pages_per_qpl); - - priv->default_num_queues = be16_to_cpu(descriptor->default_num_queues); + priv->default_tx_num_queues = be16_to_cpu(descriptor->default_num_queues); + priv->default_rx_num_queues = be16_to_cpu(descriptor->default_num_queues); gve_enable_supported_features(priv, supported_features_mask, dev_op_flow_steering, dev_op_modify_ring, diff --git a/drivers/net/gve/gve_ethdev.c b/drivers/net/gve/gve_ethdev.c index 9cfdd03b9d..3ba99fd74c 100644 --- a/drivers/net/gve/gve_ethdev.c +++ b/drivers/net/gve/gve_ethdev.c @@ -1652,10 +1652,10 @@ gve_init_priv(struct gve_priv *priv, bool skip_describe_device) priv->max_nb_txq = RTE_MIN(priv->max_nb_txq, priv->num_ntfy_blks / 2); priv->max_nb_rxq = RTE_MIN(priv->max_nb_rxq, priv->num_ntfy_blks / 2); - if (priv->default_num_queues > 0) { - priv->max_nb_txq = RTE_MIN(priv->default_num_queues, priv->max_nb_txq); - priv->max_nb_rxq = RTE_MIN(priv->default_num_queues, priv->max_nb_rxq); - } + if (priv->default_tx_num_queues > 0) + priv->max_nb_txq = RTE_MIN(priv->default_tx_num_queues, priv->max_nb_txq); + if (priv->default_rx_num_queues > 0) + priv->max_nb_rxq = RTE_MIN(priv->default_rx_num_queues, priv->max_nb_rxq); PMD_DRV_LOG(INFO, "Max TX queues %d, Max RX queues %d", priv->max_nb_txq, priv->max_nb_rxq); diff --git a/drivers/net/gve/gve_ethdev.h b/drivers/net/gve/gve_ethdev.h index ef54b75c32..1a0ac87ed8 100644 --- a/drivers/net/gve/gve_ethdev.h +++ b/drivers/net/gve/gve_ethdev.h @@ -344,7 +344,8 @@ struct gve_priv { uint64_t max_registered_pages; uint64_t num_registered_pages; /* num pages registered with NIC */ - uint16_t default_num_queues; /* default num queues to set up */ + uint16_t default_tx_num_queues; /* default num tx queues to set up */ + uint16_t default_rx_num_queues; /* default num rx queues to set up */ enum gve_queue_format queue_format; /* see enum gve_queue_format */ uint8_t enable_rsc; -- 2.56.0.rc1.315.gc6ed9934b7-goog

