Dear all,
Currently, I want to use pdump to capture our DPDK application, however for the pdump side, unfortunately, didn't capture any packet, also pdump didn't print any error. While for our application, it also didn't print any log related to pdump.
- Here's the log of pdump
[oran@localhost pdump]$ sudo ./dpdk-pdump --file-prefix wls_1 -- --pdump 'port=0,queue=*,tx-dev=/home/oran/Music/tx.pcap,rx-dev=/home/oran/Music/rx.pcap'
[sudo] password for oran:
EAL: Detected 96 lcore(s)
EAL: Detected 2 NUMA nodes
EAL: Multi-process socket /var/run/dpdk/wls_1/mp_socket_9612_d352314e70d54
EAL: Selected IOVA mode 'VA'
EAL: Probing VFIO support...
EAL: VFIO support initialized
EAL: PCI device 0000:00:04.0 on NUMA socket 0
EAL: probe driver: 8086:2021 rawdev_ioat
EAL: PCI device 0000:00:04.1 on NUMA socket 0
EAL: probe driver: 8086:2021 rawdev_ioat
EAL: PCI device 0000:00:04.2 on NUMA socket 0
EAL: probe driver: 8086:2021 rawdev_ioat
EAL: PCI device 0000:00:04.3 on NUMA socket 0
EAL: probe driver: 8086:2021 rawdev_ioat
EAL: PCI device 0000:00:04.4 on NUMA socket 0
EAL: probe driver: 8086:2021 rawdev_ioat
EAL: PCI device 0000:00:04.5 on NUMA socket 0
EAL: probe driver: 8086:2021 rawdev_ioat
EAL: PCI device 0000:00:04.6 on NUMA socket 0
EAL: probe driver: 8086:2021 rawdev_ioat
EAL: PCI device 0000:00:04.7 on NUMA socket 0
EAL: probe driver: 8086:2021 rawdev_ioat
EAL: PCI device 0000:18:00.0 on NUMA socket 0
EAL: probe driver: 8086:1572 net_i40e
EAL: PCI device 0000:18:00.1 on NUMA socket 0
EAL: probe driver: 8086:1572 net_i40e
EAL: PCI device 0000:18:0a.0 on NUMA socket 0
EAL: probe driver: 8086:154c net_i40e_vf
EAL: using IOMMU type 1 (Type 1)
EAL: PCI device 0000:18:0a.1 on NUMA socket 0
EAL: probe driver: 8086:154c net_i40e_vf
EAL: PCI device 0000:3d:00.0 on NUMA socket 0
EAL: probe driver: 8086:37d2 net_i40e
EAL: PCI device 0000:3d:00.1 on NUMA socket 0
EAL: probe driver: 8086:37d2 net_i40e
EAL: PCI device 0000:80:04.0 on NUMA socket 1
EAL: probe driver: 8086:2021 rawdev_ioat
EAL: PCI device 0000:80:04.1 on NUMA socket 1
EAL: probe driver: 8086:2021 rawdev_ioat
EAL: PCI device 0000:80:04.2 on NUMA socket 1
EAL: probe driver: 8086:2021 rawdev_ioat
EAL: PCI device 0000:80:04.3 on NUMA socket 1
EAL: probe driver: 8086:2021 rawdev_ioat
EAL: PCI device 0000:80:04.4 on NUMA socket 1
EAL: probe driver: 8086:2021 rawdev_ioat
EAL: PCI device 0000:80:04.5 on NUMA socket 1
EAL: probe driver: 8086:2021 rawdev_ioat
EAL: PCI device 0000:80:04.6 on NUMA socket 1
EAL: probe driver: 8086:2021 rawdev_ioat
EAL: PCI device 0000:80:04.7 on NUMA socket 1
EAL: probe driver: 8086:2021 rawdev_ioat
Port 2 MAC: 02 70 63 61 70 00
Port 3 MAC: 02 70 63 61 70 01
core (0), capture for (1) tuples
- port 0 device ((null)) queue 65535
Primary process is no longer active, exiting...
EAL: failed to send to (/var/run/dpdk/wls_1/mp_socket) due to Connection refused
EAL: Fail to send request /var/run/dpdk/wls_1/mp_socket:mp_pdump
PDUMP: client request for pdump enable/disable failed
EAL: failed to send to (/var/run/dpdk/wls_1/mp_socket) due to Connection refused
EAL: Fail to send request /var/run/dpdk/wls_1/mp_socket:eal_dev_mp_request
EAL: Cannot send request to primary
EAL: Failed to send hotplug request to primary
EAL: failed to send to (/var/run/dpdk/wls_1/mp_socket) due to Connection refused
EAL: Fail to send request /var/run/dpdk/wls_1/mp_socket:eal_dev_mp_request
EAL: Cannot send request to primary
EAL: Failed to send hotplug request to primary
#
-packets dequeued: 0
-packets transmitted to vdev: 0
-packets freed: 0
- Here's the detailed step using pdump
1. Add rte_pdump_init() and rte_pdump_uninit() to our application
2. Recompile DPDK 19.11
3. Add the library, -lrte_pdump & -lrte_pmd_pcap to our application's Makefile
4. Bind the virtual function for DPDK port (vfio-pci)
Does I miss something? Or does pdump can not capture the virtual function packet ?
I will be grateful for any help you can provide.
Best Regards,
Shu-hua, Liao