欢迎来到 DPDK交流社区 ,有什么问题可以尽管在这里提问,您将会收到社区其他成员的回答;也可以将您的总结写在这里,为社区其他成员提供帮助。 QQ交流2群:635461501

求助,为何dpdk testpmd无法收到外部任何报文!感谢! [已关闭]

0 投票
版本:18.11

驱动:vfio+virtio

网口:testpmd独占物理网口

程序:testpmd无法接收到报文

[root@izuf68h8q545t2xnf8m0t2z test-pmd]# ./testpmd -l 0-7 -n 4 -- -i

EAL: Detected 96 lcore(s)

EAL: Detected 2 NUMA nodes

EAL: Multi-process socket /var/run/dpdk/rte/mp_socket

EAL: No free hugepages reported in hugepages-1048576kB

EAL: Probing VFIO support...

EAL: VFIO support initialized

EAL: PCI device 0000:5b:00.0 on NUMA socket 0

EAL:   probe driver: 1af4:1000 net_virtio

EAL: Error: Invalid memory

EAL: PCI device 0000:5c:00.0 on NUMA socket 0

EAL:   probe driver: 1af4:1000 net_virtio

EAL: Error: Invalid memory

EAL: PCI device 0000:5d:00.0 on NUMA socket 0

EAL:   probe driver: 1af4:1000 net_virtio

EAL: Error: Invalid memory

EAL: PCI device 0000:5e:00.0 on NUMA socket 0

EAL:   probe driver: 1af4:1000 net_virtio

EAL: Error: Invalid memory

EAL: PCI device 0000:5f:00.0 on NUMA socket 0

EAL:   probe driver: 1af4:1000 net_virtio

EAL:   using IOMMU type 1 (Type 1)

Interactive-mode selected

testpmd: create a new mbuf pool <mbuf_pool_socket_0>: n=203456, size=2176, socket=0

testpmd: preferred mempool ops selected: ring_mp_mc

Warning! port-topology=paired and odd forward ports number, the last port will pair with itself.

Configuring Port 0 (socket 0)

EAL: Error disabling MSI-X interrupts for fd 42

Port 0: 00:16:3E:02:3B:86

Checking link statuses...

Done

testpmd>

testpmd>start

Waiting for lcores to finish...

  ---------------------- Forward statistics for port 0  ----------------------

  RX-packets: 0              RX-dropped: 0             RX-total: 0

  TX-packets: 0              TX-dropped: 0             TX-total: 0

  ----------------------------------------------------------------------------

  +++++++++++++++ Accumulated forward statistics for all ports+++++++++++++++

  RX-packets: 0              RX-dropped: 0             RX-total: 0

  TX-packets: 0              TX-dropped: 0             TX-total: 0

  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Done.

testpmd>

 

我在virtio_recv_mergeable_pkts 加了打印,但是每次virtio_recv_mergeable_pkts函数中nb_used计算为0。

nb_used = VIRTQUEUE_NUSED(vq);

因此每次都只在这三行运行,不会进入while (i < nb_used) { 。

 

不知道为何另外一台服务器ping这个网口,无法收到报文(nb_used)总是0。由于初学,不知道各位大拿能否帮看看,感谢!
问题关闭原因: 已经解决,是硬件问题
最新提问 1月 1 分类:DPDK sample解惑 | 用户: lovelywood (120 分)
已关闭 1月 5 用户:lovelywood
...