Hello,

Add more experts.

Best Regards,
Dave(Jianyue)

From: Wu, Jianyue (NSB - CN/Hangzhou)
Sent: 2021年4月29日 16:40
To: 'Li, Xiaoyun' <xiaoyun...@intel.com>; users@dpdk.org
Subject: RE: How can we enable runtime tx queue setup in XEON X552 eth device?

Hello,

How can we do it like this? Thanks😊
https://doc.dpdk.org/dts/test_plans/dynamic_queue_test_plan.html#:~:text=Dynamic%20queue%20%C2%B6%20Currently%2C%20to%20configure%20a%20DPDK,the%20device%2C%20at%20this%20point%20traffic%20can%20flow.

Dynamic queue lets etherdev driver exposes the capability flag through 
rte_eth_dev_info_get when it supports deferred queue configuraiton, then base 
on this flag, rte_eth_[rx|tx]_queue_setup could decide to continue to setup the 
queue or just return fail when device already started.
rte_eth_dev_info_get->dev_info_get for X552 VF didn’t set flag of 
RTE_ETH_DEV_CAPA_RUNTIME_TX_QUEUE_SETUP.

Best Regards,
Dave(Jianyue)

From: Wu, Jianyue (NSB - CN/Hangzhou) 
<jianyue...@nokia-sbell.com<mailto:jianyue...@nokia-sbell.com>>
Sent: 2021年4月29日 16:23
To: Wu, Jianyue (NSB - CN/Hangzhou) 
<jianyue...@nokia-sbell.com<mailto:jianyue...@nokia-sbell.com>>; 
users@dpdk.org<mailto:users@dpdk.org>
Subject: How can we enable runtime tx queue setup in XEON X552 eth device?

Hello,

How can we enable runtime tx queue setup in XEON X552 eth device? Thanks indeed!
Now try to add queue in runtime in X552 VF, error will be reported.
“rte_eth_tx_quuee_setup: err=-16, port = 1”
Here -16 means EBUSY, because the eth device is already started, if configure 
this interface before start, it is fine.

If I try to add dev_capa in ixgbevf_dev_info_get() in DPDK code, then another 
error will be reported.
“Ethdev port_id=0 tx_queue_id=1, new added offloads 0x4000 must be within 
per-queue offload capabilities 0x0 in rte_eth_tx_queue_setup()”

While in X552 datasheet, it says it is supported.

In DPDK i40e driver, seems runtime tx queue setup is supported(setup TxQ when 
eth interface is running)
drivers/net/i40e/i40e_ethdev.c
                dev_info->dev_capa =
                                RTE_ETH_DEV_CAPA_RUNTIME_RX_QUEUE_SETUP |
                                RTE_ETH_DEV_CAPA_RUNTIME_TX_QUEUE_SETUP;

Best Regards,
Dave(Jianyue)

Reply via email to