EAL ``--vdev`` argument can be used to create KNI device instance, like::
- testpmd --vdev=net_kni0 --vdev=net_kn1 -- -i
+ dpdk-testpmd --vdev=net_kni0 --vdev=net_kn1 -- -i
Above command will create ``kni0`` and ``kni1`` Linux network interfaces,
those interfaces can be controlled by standard Linux tools.
Interface name: kni#
force bind kernel thread to a core : NO
mbuf size: (rte_pktmbuf_data_room_size(pktmbuf_pool) - RTE_PKTMBUF_HEADROOM)
- mtu: (conf.mbuf_size - ETHER_HDR_LEN)
+ mtu: (conf.mbuf_size - RTE_ETHER_HDR_LEN)
KNI control path is not supported with the PMD, since there is no physical
backend device by default.
PMD arguments
-------------
-``no_request_thread``, by default PMD creates a phtread for each KNI interface
+``no_request_thread``, by default PMD creates a pthread for each KNI interface
to handle Linux network interface control commands, like ``ifconfig kni0 up``
With ``no_request_thread`` option, pthread is not created and control commands
Argument usage::
- testpmd --vdev "net_kni0,no_request_thread=1" -- -i
+ dpdk-testpmd --vdev "net_kni0,no_request_thread=1" -- -i
PMD log messages
.. code-block:: console
- insmod build/kmod/rte_kni.ko lo_mode=lo_mode_fifo_skb
+ insmod <build_dir>/kernel/linux/kni/rte_kni.ko lo_mode=lo_mode_fifo_skb
* Start testpmd with no physical device but two KNI virtual devices:
.. code-block:: console
- ./testpmd --vdev net_kni0 --vdev net_kni1 -- -i
+ ./dpdk-testpmd --vdev net_kni0 --vdev net_kni1 -- -i
.. code-block:: console
RX-packets: 71275820 RX-dropped: 0 RX-total: 71275820
TX-packets: 71275884 TX-dropped: 0 TX-total: 71275884
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
-