Bug 1132 - net/i40e changes recommended Rx ring_size after device start
Summary: net/i40e changes recommended Rx ring_size after device start
Status: UNCONFIRMED
Alias: None
Product: DPDK
Classification: Unclassified
Component: ethdev (show other bugs)
Version: 22.11
Hardware: All All
: Normal normal
Target Milestone: ---
Assignee: Zhang Yuying
URL:
Depends on:
Blocks:
 
Reported: 2022-11-23 09:57 CET by Andrew Rybchenko
Modified: 2023-11-03 07:54 CET (History)
3 users (show)



Attachments

Description Andrew Rybchenko 2022-11-23 09:57:13 CET
net/i40e changes recommended Rx ring_size after device start

NIC is Intel X710

It does not make sense since all Rx queues are typically already configured and started.

It happens because of link_speeds condition above:
790 »·······} else {
 3791 »·······»·······/* For X710 */
 3792 »·······»·······dev_info->speed_capa = RTE_ETH_LINK_SPEED_1G | RTE_ETH_LINK_SPEED_10G;
 3793 »·······»·······dev_info->default_rxportconf.nb_queues = 1;
 3794 »·······»·······dev_info->default_txportconf.nb_queues = 1;
 3795 »·······»·······if (dev->data->dev_conf.link_speeds & RTE_ETH_LINK_SPEED_10G) {
 3796 »·······»·······»·······dev_info->default_rxportconf.ring_size = 512;
 3797 »·······»·······»·······dev_info->default_txportconf.ring_size = 256;
 3798 »·······»·······} else {
 3799 »·······»·······»·······dev_info->default_rxportconf.ring_size = 256;
 3800 »·······»·······»·······dev_info->default_txportconf.ring_size = 256;
 3801 »·······»·······}
 3802 »·······}

which are updated on device start in i40e_apply_link_speed().

Before start default_rxportconf.ring_size is 256, after start it is 512.

Found using [1]

[1] https://ts-factory.io/doc/dpdk-ethdev-ts/generated/rst/group_usecases-dev_info_persistence.html#doxid-group-usecases-dev-info-persistence
Comment 1 dengkaiwen 2023-11-03 07:54:25 CET
please offer the reproduce steps with standard DPDK API like testpmd, l3fwd and other examples.

Note You need to log in before you can comment on or make changes to this bug.