[dpdk-dev] DPDK mbuf pool in SR-IOV env and one RX/TX queue

Saurabh Mishra saurabh.globe at gmail.com
Fri Jan 22 05:35:20 CET 2016


Hi,


Is it possible for two or more processes to share the same mbuf_pool in
SR-IOV with single rx/tx queue?



 char *eal_argv[] = {"fakeelf",

                        "-c2",

                        "-n4",

                        "--proc-type=primary",};


int ret = rte_eal_init(4, eal_argv);

And for secondary, we are passing --proc-type=secondary and adjust -c
option according to the core number (1 << core_num).

rte_pktmbuf_pool_create(mbuf_pool_name,
NB_MBUFS,

                            MBUF_CACHE_SIZE, 0,
RTE_MBUF_DEFAULT_BUF_SIZE,

                            rte_socket_id());



We have seen that it does not work. However, with PCI pass through of whole
NIC, we can easily share same mbuf_pool with many processes.


What are the limitations with SR-IOV and DPDK? If we create one primary and
don't create any  secondary proc-type, then that seems to work with SR-IOV.
However, the moment we add a secondary process, rte_mempool_lookup()
returns NULL.


Note that we see only 1 queue for rx and tx and multi-queue gets disabled
the moment we enable VFs.


[683877.050219] ixgbe 0000:06:00.0: *Multi*queue Disabled: Rx Queue count =
1, Tx Queue count = 1

[683879.799872] ixgbe 0000:06:00.1: *Multi*queue Disabled: Rx Queue count =
1, Tx Queue count = 1

The device is question is as follows:



06:00.0 *Ether*net controller: Intel Corporation 82599ES 10-Gigabit
SFI/SFP+ Network Connection (rev 01)

06:00.1 *Ether*net controller: Intel Corporation 82599ES 10-Gigabit
SFI/SFP+ Network Connection (rev 01)

06:10.0 *Ether*net controller: Intel Corporation 82599 *Ether*net
Controller Virtual Function (rev 01)

06:10.1 *Ether*net controller: Intel Corporation 82599 *Ether*net
Controller Virtual Function (rev 01)

06:10.2 *Ether*net controller: Intel Corporation 82599 *Ether*net
Controller Virtual Function (rev 01)

06:10.3 *Ether*net controller: Intel Corporation 82599 *Ether*net
Controller Virtual Function (rev 01)



Thanks,

/Saurabh


More information about the dev mailing list