dpdk 网卡初始化 —— 收包

net_hinic: Disable vlan filter succeed, device: hinic-0000:05:00.0, port_id: 0
net_hinic: Disable vlan strip succeed, device: hinic-0000:05:00.0, port_id: 0
net_hinic: Set new mac address 44:a1:91:a4:9b:eb

net_hinic: Disable promiscuous, nic_dev: hinic-0000:05:00.0, port_id: 0, promisc: 0
net_hinic: Disable allmulticast succeed, nic_dev: hinic-0000:05:00.0, port_id: 0
(gdb) bt
#0  hinic_set_mac_addr (dev=0x1002900 <rte_eth_devices>, addr=0x13ff9a180)
    at /data1/dpdk-19.11/drivers/net/hinic/hinic_pmd_ethdev.c:2274
#1  0x000000000054eed0 in rte_eth_dev_mac_restore (dev=0x1002900 <rte_eth_devices>, dev_info=0xffffffffe430)
    at /data1/dpdk-19.11/lib/librte_ethdev/rte_ethdev.c:1512
#2  0x000000000054f044 in rte_eth_dev_config_restore (dev=0x1002900 <rte_eth_devices>, dev_info=0xffffffffe430, 
    port_id=0) at /data1/dpdk-19.11/lib/librte_ethdev/rte_ethdev.c:1545
#3  0x000000000054f480 in rte_eth_dev_start (port_id=0) at /data1/dpdk-19.11/lib/librte_ethdev/rte_ethdev.c:1639
#4  0x00000000004669f4 in main (argc=4, argv=0xfffffffff4e0) at /data1/dpdk-19.11/demo/dpdk-pingpong/main.c:581
(gdb) c
Continuing.
net_hinic: Set new mac address 44:a1:91:a4:9b:eb


Breakpoint 2, hinic_dev_promiscuous_disable (dev=0x1002900 <rte_eth_devices>)
    at /data1/dpdk-19.11/drivers/net/hinic/hinic_pmd_ethdev.c:1833
1833            int rc = HINIC_OK;
(gdb) bt
#0  hinic_dev_promiscuous_disable (dev=0x1002900 <rte_eth_devices>)
    at /data1/dpdk-19.11/drivers/net/hinic/hinic_pmd_ethdev.c:1833
#1  0x000000000054f124 in rte_eth_dev_config_restore (dev=0x1002900 <rte_eth_devices>, dev_info=0xffffffffe430, 
    port_id=0) at /data1/dpdk-19.11/lib/librte_ethdev/rte_ethdev.c:1564
#2  0x000000000054f480 in rte_eth_dev_start (port_id=0) at /data1/dpdk-19.11/lib/librte_ethdev/rte_ethdev.c:1639
#3  0x00000000004669f4 in main (argc=4, argv=0xfffffffff4e0) at /data1/dpdk-19.11/demo/dpdk-pingpong/main.c:581
(gdb) c
Continuing.
net_hinic: Disable promiscuous, nic_dev: hinic-0000:05:00.0, port_id: 0, promisc: 0

Breakpoint 1, hinic_dev_allmulticast_disable (dev=0x1002900 <rte_eth_devices>)
    at /data1/dpdk-19.11/drivers/net/hinic/hinic_pmd_ethdev.c:1781
1781            int ret = HINIC_OK;
(gdb) bt
#0  hinic_dev_allmulticast_disable (dev=0x1002900 <rte_eth_devices>)
    at /data1/dpdk-19.11/drivers/net/hinic/hinic_pmd_ethdev.c:1781
#1  0x000000000054f270 in rte_eth_dev_config_restore (dev=0x1002900 <rte_eth_devices>, dev_info=0xffffffffe430, 
    port_id=0) at /data1/dpdk-19.11/lib/librte_ethdev/rte_ethdev.c:1591
#2  0x000000000054f480 in rte_eth_dev_start (port_id=0) at /data1/dpdk-19.11/lib/librte_ethdev/rte_ethdev.c:1639
#3  0x00000000004669f4 in main (argc=4, argv=0xfffffffff4e0) at /data1/dpdk-19.11/demo/dpdk-pingpong/main.c:581

收包

[root@localhost dpdk-19.11]# pstack 18745
Thread 1 (process 18745):
#0  __rte_ring_do_dequeue (available=0x0, is_sc=0, behavior=RTE_RING_QUEUE_FIXED, n=0, obj_table=0x13e7e9000, r=0x13fe9c300) at /data1/dpdk-19.11/arm64-armv8a-linuxapp-gcc/include/rte_ring.h:396
#1  rte_ring_mc_dequeue_bulk (available=0x0, n=32, obj_table=0x13e7e9000, r=0x13fe9c300) at /data1/dpdk-19.11/arm64-armv8a-linuxapp-gcc/include/rte_ring.h:555
#2  common_ring_mc_dequeue (mp=0x13faeac00, obj_table=0x13e7e9000, n=32) at /data1/dpdk-19.11/drivers/mempool/ring/rte_mempool_ring.c:31
#3  0x0000000000782ecc in rte_mempool_ops_dequeue_bulk (mp=0x13faeac00, obj_table=0x13e7e9000, n=32) at /data1/dpdk-19.11/arm64-armv8a-linuxapp-gcc/include/rte_mempool.h:739
#4  0x00000000007834d4 in __mempool_generic_get (cache=0x13faf0e00, n=32, obj_table=0x13e7e9000, mp=0x13faeac00) at /data1/dpdk-19.11/arm64-armv8a-linuxapp-gcc/include/rte_mempool.h:1471
#5  rte_mempool_generic_get (cache=0x13faf0e00, n=32, obj_table=0x13e7e9000, mp=0x13faeac00) at /data1/dpdk-19.11/arm64-armv8a-linuxapp-gcc/include/rte_mempool.h:1506
#6  rte_mempool_get_bulk (n=32, obj_table=0x13e7e9000, mp=0x13faeac00) at /data1/dpdk-19.11/arm64-armv8a-linuxapp-gcc/include/rte_mempool.h:1539
#7  rte_pktmbuf_alloc_bulk (pool=0x13faeac00, mbufs=0x13e7e9000, count=32) at /data1/dpdk-19.11/arm64-armv8a-linuxapp-gcc/include/rte_mbuf.h:829
#8  0x0000000000785464 in hinic_rx_alloc_mbuf_bulk (rxq=0x13fe9be80, mbufs=0x13e7e9000, exp_mbuf_cnt=32) at /data1/dpdk-19.11/drivers/net/hinic/hinic_pmd_rx.c:842
#9  0x00000000007855f0 in hinic_rearm_rxq_mbuf (rxq=0x13fe9be80) at /data1/dpdk-19.11/drivers/net/hinic/hinic_pmd_rx.c:891
#10 0x0000000000785c64 in hinic_recv_pkts (rx_queue=0x13fe9be80, rx_pkts=0xffff9077ce90, nb_pkts=32) at /data1/dpdk-19.11/drivers/net/hinic/hinic_pmd_rx.c:1047
#11 0x00000000004654c4 in pong_main_loop ()
#12 0x00000000004656b8 in pong_launch_one_lcore ()
#13 0x0000000000592358 in eal_thread_loop (arg=0x0) at /data1/dpdk-19.11/lib/librte_eal/linux/eal/eal_thread.c:153
#14 0x0000ffff91987d38 in start_thread (arg=0xffff9077d910) at pthread_create.c:309
#15 0x0000ffff918cf5f0 in thread_start () at ../sysdeps/unix/sysv/linux/aarch64/clone.S:91
[root@localhost dpdk-19.11]#
原文地址:https://www.cnblogs.com/dream397/p/13672328.html