dpdk19.11 ixgbe rx queue increase to 22 didn't not take effect,

0

the original number of rx queue is 16,increase to 22,the increase queue can't receive packets.eth config as follows,I have print the reta table and queue seems setting are right.

static struct rte_eth_conf port_conf_def = {
.rxmode = {
    .mq_mode = ETH_MQ_RX_RSS,
    .max_rx_pkt_len = RTE_ETHER_MAX_LEN,
    .split_hdr_size = 0, /**< hdr buf size */
    .offloads = DEV_RX_OFFLOAD_IPV4_CKSUM,
},
.rx_adv_conf = {
    .rss_conf = {
        .rss_key = rss_intel_key,
        .rss_key_len = 40,
        .rss_hf = ETH_RSS_PROTO_MASK,
    },
},

.txmode = {
    .mq_mode = ETH_MQ_TX_NONE,
},
.fdir_conf = {
        .mode    = RTE_FDIR_MODE_PERFECT,
        .pballoc = RTE_FDIR_PBALLOC_64K,
        .status  = RTE_FDIR_REPORT_STATUS/*_ALWAYS*/,
        .mask    = {
                .vlan_tci_mask      = 0x0,
                .ipv4_mask          = {
                        .src_ip         = 0x00000000,
                        .dst_ip         = 0x0,
                },
                .ipv6_mask          = {
                        .src_ip         = { 0, 0, 0, 0 },
                        .dst_ip         = { 0, 0, 0, 0 },
                },
                .src_port_mask      = 0x0000,
                /* to be changed according to slave lcore number in use */
                .dst_port_mask      = RTE_BE16(0x00FF),
                .mac_addr_byte_mask = 0x00,
                .tunnel_type_mask   = 0,
                .tunnel_id_mask     = 0,
        },
        .drop_queue             = 127,
        .flex_conf              = {
                .nb_payloads        = 0,
                .nb_flexmasks       = 0,
        },
},

};

rss
dpdk
asked on Stack Overflow Jun 24, 2020 by Idea Wi

1 Answer

0

Using DPDK sample programs like testpmd, skeleton, l2fwd we can increase the RX queue for Phsycial Function (PF) from 1 to 32 without any issues. NIC used for testing are Physical Intel Fortville and Columbiaville.

But for virtual NIC like PCAP, TAP and TUN this is not possible as max queue are intizliaed by OS and driver.

Note: requested multiple times to @IdeaWi for details on NIC, OS, and firmware. There are no updates .

answered on Stack Overflow May 6, 2021 by Vipin Varghese

User contributions licensed under CC BY-SA 3.0