Hi DPDK community,

I need some urgent help.

1)      Iam running my dpdk application on a VMware based VM. Iam using 20.11.9 dpdk version
Iam directly connected to the PCI device to receive pkts on my application.

      :
      EAL: Detected 16 lcore(s)
      EAL: Detected 1 NUMA nodes
      EAL: Detected shared linkage of DPDK
      EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
      EAL: Selected IOVA mode 'PA'
      EAL: No available hugepages reported in hugepages-1048576kB
      EAL: Probing VFIO support...
      EAL: VFIO support initialized
      EAL: Probe PCI driver: net_vmxnet3 (15ad:7b0) device: 0000:04:00.0 (socket 0)
      EAL: No legacy callbacks, legacy socket not created
      :

2)      Iam trying to use dpdk-pdump application to capture packets.

      dpdk-pdump -l 3 -- --pdump 'device_id=0000:04:00.0,queue=*,rx-dev=/tmp/rx.pcap,total-num-mbufs=8192,ring-size=128'

      EAL: Detected 16 lcore(s)
      EAL: Detected 1 NUMA nodes
      EAL: Detected static linkage of DPDK
      EAL: Multi-process socket /var/run/dpdk/rte/mp_socket_644376_50d5dc20612f8
      EAL: Selected IOVA mode 'PA'
      EAL: Probing VFIO support...
      EAL: VFIO support initialized
      EAL: Probe PCI driver: net_vmxnet3 (15ad:7b0) device: 0000:04:00.0 (socket 0)
      Port 1 MAC: 02 70 63 61 70 00
       core (3), capture for (1) tuples
       - port 0 device (0000:04:00.0) queue 65535
      ^C

      Signal 2 received, preparing to exit...
      ##### PDUMP DEBUG STATS #####
       -packets dequeued:                                       0
       -packets transmitted to vdev:            0
       -packets freed:                                  0

This is the mempool and ring which got created in app side

            ring <MP_pdump_pool_0>@0x10045db00
              flags=0
              size=16384
              capacity=16383
              ct=0
              ch=0
              pt=8192
              ph=8192
              used=8192
              avail=8191
            ring <rx_ring_0>@0x102802680
              flags=0
              size=128
              capacity=127
              ct=0
              ch=0
              pt=0
              ph=0
              used=0
              avail=127

This is the port output, port 0 is application and port 1 is created by pdump and no pkt is seen to be captured.

Port 0 stats:
 - link status: 1
 - Pkts in:   50
 - Pkts out:  0
 - total ibytes: 4024
 - total obytes: 0
 - rx miss: 0
 - In Errs:   0
 - Out Errs:  0
 - Mbuf Errs: 0
 - Q Rx Packets:

Port 1 stats:
 - link status: 1
 - Pkts in:   0
 - Pkts out:  0
 - total ibytes: 0
 - total obytes: 0
 - rx miss: 0
 - In Errs:   0
 - Out Errs:  0
 - Mbuf Errs: 0
 - Q Rx Packets:

3)      I see the same result while using dpdk-testpmd on the APP side.

4)      As per this page, https://doc.dpdk.org/guides/tools/pdump.html.
      Is this applicable to vmxnet3 device here ??

*       As of now the dpdk-pdump tool cannot capture the packets of virtual devices in the primary process due to a bug in the ethdev library. Due to this bug, in a multi process context, when the primary and secondary have different ports set, then the secondary process (here the dpdk-pdump tool) overwrites the rte_eth_devices[] entries of the primary process.

Thanks
Rajesh