Bug ID 1310
Summary iavf : max_rtx_queues not true when network adaptor not support large vf
Product DPDK
Version 22.11
Hardware x86
OS Linux
Status UNCONFIRMED
Severity normal
Priority Normal
Component ethdev
Assignee dev@dpdk.org
Reporter yue.ma@ericsson.com
Target Milestone ---

our app code use dev_info->max_tx_queues to check the max queue.
we get dev_info->max_rx_queues=265(IAVF_MAX_NUM_QUEUES_LV), but when we try to
requet 30 tx queue, we got  iavf_dev_configure(): large VF is not supported.
by check code we find that :
max queue number of  nomal vf  is 16 (IAVF_MAX_NUM_QUEUES_DFLT).

may be the code need to change like this :
drivers/net/iavf/iavf_ethdev.c:         
static int
iavf_dev_info_get(struct rte_eth_dev *dev, struct rte_eth_dev_info *dev_info)
{
        struct iavf_adapter *adapter =
                IAVF_DEV_PRIVATE_TO_ADAPTER(dev->data->dev_private);
        struct iavf_info *vf = &adapter->vf;

        if (adapter->closed)
                return -EIO;

        dev_info->max_rx_queues = IAVF_MAX_NUM_QUEUES_LV;
        dev_info->max_tx_queues = IAVF_MAX_NUM_QUEUES_LV;
+       if (vf->vf_res->vf_cap_flags & VIRTCHNL_VF_LARGE_NUM_QPAIRS){
+               dev_info->max_rx_queues = IAVF_MAX_NUM_QUEUES_DFLT;
+               dev_info->max_tx_queues = IAVF_MAX_NUM_QUEUES_DFLT;     
+       }
          


You are receiving this mail because: