[dpdk-dev] [PATCH 02/12] net/bnxt: fix rxq/txq get information
Ferruh Yigit
ferruh.yigit at intel.com
Fri Sep 11 16:41:41 CEST 2020
On 9/9/2020 4:52 PM, Lance Richardson wrote:
> Return correct values for Rx/Tx offloads and for rx_drop_en.
>
> Fixes: 2fc201884be8 ("net/bnxt: support rxq/txq get information")
> Reviewed-by: Ajit Kumar Khaparde <ajit.khaparde at broadcom.com>
> Signed-off-by: Lance Richardson <lance.richardson at broadcom.com>
> Cc: stable at dpdk.org
> ---
> drivers/net/bnxt/bnxt_ethdev.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/bnxt/bnxt_ethdev.c b/drivers/net/bnxt/bnxt_ethdev.c
> index 7a77922c0c..5585f872d0 100644
> --- a/drivers/net/bnxt/bnxt_ethdev.c
> +++ b/drivers/net/bnxt/bnxt_ethdev.c
> @@ -2588,8 +2588,9 @@ bnxt_rxq_info_get_op(struct rte_eth_dev *dev, uint16_t queue_id,
> qinfo->nb_desc = rxq->nb_rx_desc;
>
> qinfo->conf.rx_free_thresh = rxq->rx_free_thresh;
> - qinfo->conf.rx_drop_en = 0;
> + qinfo->conf.rx_drop_en = 1;
Why 0 is wrong but 1 is correct?
Technically 'rx_drop_en' is a user configuration, which is set via
'rte_eth_rx_queue_setup()' API.
bnxt seems not honoring this config option at all.
Based on HW capability, I think two things can be done,
1) Configure the HW based on config request, and return configured value in
'bnxt_rxq_info_get_op()'. see 'ixgbe'.
2) If HW is not configurable, check the value in 'rte_eth_rx_queue_setup()'
a) return error if unsupported value requested. see 'sfc'.
b) log a warning and overwrite the requested config with whatever supported.
And for both a & b, return current config in the 'bnxt_rxq_info_get_op()'
> qinfo->conf.rx_deferred_start = rxq->rx_deferred_start;
> + qinfo->conf.offloads = dev->data->dev_conf.rxmode.offloads;
This is for queue specific offloads, you are returning port offloads.
As far as I can see bnxt doesn't have any queue specific offload, so this can be
dropped.
More information about the dev
mailing list