[Edited Message Follows] Hi Matt, I run two vpp instance (different prefix) in same hyper-v vm, the first vpp instance prefix is vs, second is vc. I have eth1 and eth2, the config is below: I start the vs and vc instance one by one, after vc instance started, the first instance vs stuck in dpdk wait function. Does one hyper-v only support one vpp instance ? ``` [root@localhost net-base]# ls /sys/class/net/eth1/device -all lrwxrwxrwx 1 root root 0 Apr 29 21:14 /sys/class/net/eth1/device -> ../../../3362e322-f26f-4568-ba5c-d8ff6b734d0c [root@localhost net-base]# ls /sys/class/net/eth2/device -all lrwxrwxrwx 1 root root 0 Apr 29 21:14 /sys/class/net/eth2/device -> ../../../1c66c020-246f-4948-8d16-dd7e6c892f0d [root@localhost net-base]# modprobe uio_hv_generic [root@localhost net-base]# ifconfig eth1 down [root@localhost net-base]# ifconfig eth2 down [root@localhost net-base]# ifconfig eth1 eth1: flags=4098<BROADCAST,MULTICAST> mtu 1500 ether 00:15:5d:5c:68:0e txqueuelen 1000 (Ethernet) RX packets 459960 bytes 47915079 (45.6 MiB) RX errors 0 dropped 7730 overruns 0 frame 0 TX packets 7838 bytes 1283736 (1.2 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@localhost net-base]# ifconfig eth2 eth2: flags=4098<BROADCAST,MULTICAST> mtu 1500 ether 00:15:5d:5c:68:0f txqueuelen 1000 (Ethernet) RX packets 31316 bytes 3085337 (2.9 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 7658 bytes 1270728 (1.2 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 [root@localhost net-base]# ``` When i start the second vpp, the first vpp instance vs stuck in dpdk `vmbus_txbr_write` function Below is the first vpp insance vs stack : ``` vs$ sh hard Name Idx Link Hardware eth0 1 up eth0 Link speed: 1 Gbps RX Queues: queue thread mode 0 vs_wk_0 (1) polling 1 vs_wk_0 (1) polling 2 vs_wk_0 (1) polling 3 vs_wk_0 (1) polling 4 vs_wk_0 (1) polling 5 vs_wk_0 (1) polling 6 vs_wk_0 (1) polling 7 vs_wk_0 (1) polling Ethernet address 00:15:5d:5c:68:0e Microsoft Hyper-V Netvsc carrier up full duplex max-frame-size 0 flags: pmd-init-fail rx: queues 8 (max 64), desc 1024 (min 0 max 65535 align 1) tx: queues 2 (max 64), desc 1024 (min 1 max 4096 align 1) max rx packet len: 2048 promiscuous: unicast off all-multicast off vlan offload: strip off filter off qinq off rx offload avail: vlan-strip ipv4-cksum udp-cksum tcp-cksum rss-hash rx offload active: none tx offload avail: vlan-insert ipv4-cksum udp-cksum tcp-cksum tcp-tso multi-segs tx offload active: none rss avail: ipv4-tcp ipv4-udp ipv4 ipv6-tcp ipv6 rss active: ipv4-tcp ipv4 tx burst function: (not available) rx burst function: (not available) Errors: rte_eth_rx_queue_setup[port:0, errno:-12]: Unknown error -12 local0 0 down local0 Link speed: unknown local vs$ Program received signal SIGINT, Interrupt. rte_atomic32_cmpset (dst=0x7ffa80000000, exp=29392, src=29480) at ../src-dpdk/lib/eal/x86/include/rte_atomic.h:189 189 { Missing separate debuginfos, use: debuginfo-install libgcc-4.8.5-44.el7.x86_64 libstdc++-4.8.5-44.el7.x86_64 libuuid-2.23.2-65.el7_9.1.x86_64 mbedtls-2.7.17-1.el7.x86_64 pkcs11-helper-1.11-3.el7.x86_64 (gdb) bt #0 rte_atomic32_cmpset (dst=0x7ffa80000000, exp=29392, src=29480) at ../src-dpdk/lib/eal/x86/include/rte_atomic.h:189 #1 0x00007fff687689c7 in vmbus_txbr_write (tbr=0x7fe63ffb11f0, iov=0x7fff64421b90, iovlen=4, need_sig=0x7fff64421bdf) at ../src-dpdk/drivers/bus/vmbus/vmbus_bufring.c:162 #2 0x00007fff6876906e in rte_vmbus_chan_send_sglist (chan=0x7fe63ffb11c0, sg=0x7fff64421c80, sglen=1, data=0x7fff64421c90, dlen=40, xactid=0, need_sig=0x0) at ../src-dpdk/drivers/bus/vmbus/vmbus_channel.c:175 #3 0x00007fff6afe2e11 in hn_nvs_send_sglist (chan=0x7fe63ffb11c0, sg=0x7fff64421c80, sglen=1, nvs_msg=0x7fff64421c90, nvs_msglen=40, sndc=0, need_sig=0x0) at ../src-dpdk/drivers/net/netvsc/hn_nvs.h:236 #4 0x00007fff6afe2fff in hn_nvs_send_rndis_ctrl (chan=0x7fe63ffb11c0, req=0x7fe640cd7000, reqlen=28) at ../src-dpdk/drivers/net/netvsc/hn_rndis.c:285 #5 0x00007fff6afe33bb in hn_rndis_exec1 (hv=0x7fe63ffb1380, req=0x7fe640cd7000, reqlen=28, comp=0x7fe640cd6000, comp_len=28) at ../src-dpdk/drivers/net/netvsc/hn_rndis.c:396 #6 0x00007fff6afe3554 in hn_rndis_execute (hv=0x7fe63ffb1380, rid=191, req=0x7fe640cd7000, reqlen=28, comp=0x7fe640cd6000, comp_len=28, comp_type=2147483652) at ../src-dpdk/drivers/net/netvsc/hn_rndis.c:440 #7 0x00007fff6afe3733 in hn_rndis_query (hv=0x7fe63ffb1380, oid=65812, idata=0x0, idlen=0, odata=0x7fe63ffb13a8, odlen=4) at ../src-dpdk/drivers/net/netvsc/hn_rndis.c:501 #8 0x00007fff6afe4c38 in hn_rndis_get_linkstatus (hv=0x7fe63ffb1380) at ../src-dpdk/drivers/net/netvsc/hn_rndis.c:1116 #9 0x00007fff6afdf697 in hn_dev_link_update (dev=0x7fff6cff9180 , wait_to_complete=0) at ../src-dpdk/drivers/net/netvsc/hn_ethdev.c:234 #10 0x00007fff6910615e in rte_eth_link_get_nowait (port_id=0, eth_link=0x7fff77b8f9a8) at ../src-dpdk/lib/ethdev/rte_ethdev.c:2787 #11 0x00007fff6c565f80 in dpdk_update_link_state (xd=0x7fff77b8f900, now=48.256990863990843) at /root/code/net-base/.vpp-22.02/src/plugins/dpdk/device/init.c:1327 #12 0x00007fff6c566633 in dpdk_process (vm=0x7fff6fbff680, rt=0x7fff70aaac40, f=0x0) at /root/code/net-base/.vpp-22.02/src/plugins/dpdk/device/init.c:1454 #13 0x00007ffff476e298 in vlib_process_bootstrap (_a=140734878931552) at /root/code/net-base/.vpp-22.02/src/vlib/main.c:1235 #14 0x00007ffff3f43790 in clib_calljmp () at /root/code/net-base/.vpp-22.02/src/vppinfra/longjmp.S:123 #15 0x00007fff64775a10 in ?? () #16 0x00007ffff476e54e in vlib_process_startup (vm=0x7fff6fbff680, p=0x7fff70aaac40, f=0x7ffff476243f <vlib_process_start_switch_stack+360>) at /root/code/net-base/.vpp-22.02/src/vlib/main.c:1260 #17 0x00007fff70aaac40 in ?? () #18 0x00007fff70619c88 in ?? () #19 0x00007fff70619b28 in ?? () #20 0x0000000000000013 in ?? () #21 0x00007fff70619c88 in ?? () #22 0x00007fff70aaac40 in ?? () #23 0x00007fff70aaa900 in ?? () #24 0x0000000000000000 in ?? () (gdb) info thread Id Target Id Frame 3 Thread 0x7ffabf4a7700 (LWP 1659) "vs_wk_0" 0x00007ffff4762628 in vlib_get_node (vm=0x7fff77b7a800, i=69) at /root/code/net-base/.vpp-22.02/src/vlib/node_funcs.h:88 2 Thread 0x7ffac00b5700 (LWP 1658) "eal-intr-thread" 0x00007ffff38d20e3 in epoll_wait () at ../sysdeps/unix/syscall-template.S:81 * 1 Thread 0x7ffff7eaf840 (LWP 1598) "vs_main" rte_atomic32_cmpset (dst=0x7ffa80000000, exp=29392, src=29480) at ../src-dpdk/lib/eal/x86/include/rte_atomic.h:189 (gdb) ``` Below is the second vpp instance vc, which work well: ``` vc$ sh hard Name Idx Link Hardware eth0 1 up eth0 Link speed: 10 Gbps RX Queues: queue thread mode 0 vc_wk_0 (1) polling 1 vc_wk_0 (1) polling 2 vc_wk_0 (1) polling 3 vc_wk_0 (1) polling 4 vc_wk_0 (1) polling 5 vc_wk_0 (1) polling 6 vc_wk_0 (1) polling 7 vc_wk_0 (1) polling Ethernet address 00:15:5d:5c:68:0f Microsoft Hyper-V Netvsc carrier up full duplex max-frame-size 0 flags: pmd-init-fail rx: queues 8 (max 64), desc 1024 (min 0 max 65535 align 1) tx: queues 2 (max 64), desc 1024 (min 1 max 4096 align 1) max rx packet len: 2048 promiscuous: unicast off all-multicast off vlan offload: strip off filter off qinq off rx offload avail: vlan-strip ipv4-cksum udp-cksum tcp-cksum rss-hash rx offload active: none tx offload avail: vlan-insert ipv4-cksum udp-cksum tcp-cksum tcp-tso multi-segs tx offload active: none rss avail: ipv4-tcp ipv4-udp ipv4 ipv6-tcp ipv6 rss active: ipv4-tcp ipv4 tx burst function: (not available) rx burst function: (not available) Errors: rte_eth_rx_queue_setup[port:0, errno:-12]: Unknown error -12 local0 0 down local0 Link speed: unknown local vc$ ``` When I set the nic num-rx-queues/num-tx-queues to 1, and after the vc started, the vs instance work well, the second stuck in hn_nvs_execute function: ``` sh int Name Idx State MTU (L3/IP4/IP6/MPLS) Counter Count eth0 1 up 9000/0/0/0 rx packets 101 rx bytes 8872 drops 99 punt 2 ip4 48 ip6 32 local0 0 down 0/0/0/0 vs$ sh hard Name Idx Link Hardware eth0 1 up eth0 Link speed: 1 Gbps RX Queues: queue thread mode 0 vs_wk_0 (1) polling Ethernet address 00:15:5d:5c:68:0e Microsoft Hyper-V Netvsc carrier up full duplex max-frame-size 0 flags: admin-up tx-offload rx-ip4-cksum rx: queues 1 (max 64), desc 1024 (min 0 max 65535 align 1) tx: queues 1 (max 64), desc 1024 (min 1 max 4096 align 1) max rx packet len: 2048 promiscuous: unicast off all-multicast on vlan offload: strip off filter off qinq off rx offload avail: vlan-strip ipv4-cksum udp-cksum tcp-cksum rss-hash rx offload active: ipv4-cksum tx offload avail: vlan-insert ipv4-cksum udp-cksum tcp-cksum tcp-tso multi-segs tx offload active: ipv4-cksum udp-cksum tcp-cksum multi-segs rss avail: ipv4-tcp ipv4-udp ipv4 ipv6-tcp ipv6 rss active: none tx burst function: hn_recv_pkts rx burst function: hn_xmit_pkts rx frames ok 191 rx bytes ok 16821 extended stats: rx_good_packets 191 rx_good_bytes 16821 rx_q0_packets 191 rx_q0_bytes 16821 rx_q0_good_packets 191 rx_q0_good_bytes 16821 rx_q0_multicast_packets 142 rx_q0_broadcast_packets 49 rx_q0_undersize_packets 31 rx_q0_size_65_127_packets 151 rx_q0_size_128_255_packets 9 local0 0 down local0 Link speed: unknown local ``` the vc gdb stack is: ``` Program received signal SIGINT, Interrupt. 0x00007fff690bf62f in rte_rdtsc () at ../src-dpdk/lib/eal/x86/include/rte_cycles.h:46 46 asm volatile("rdtsc" : Missing separate debuginfos, use: debuginfo-install libgcc-4.8.5-44.el7.x86_64 libstdc++-4.8.5-44.el7.x86_64 libuuid-2.23.2-65.el7_9.1.x86_64 mbedtls-2.7.17-1.el7.x86_64 pkcs11-helper-1.11-3.el7.x86_64 (gdb) bt #0 0x00007fff690bf62f in rte_rdtsc () at ../src-dpdk/lib/eal/x86/include/rte_cycles.h:46 #1 0x00007fff690bf644 in rte_get_tsc_cycles () at ../src-dpdk/lib/eal/x86/include/rte_cycles.h:60 #2 0x00007fff690bf61c in rte_get_timer_cycles () at ../src-dpdk/lib/eal/include/generic/rte_cycles.h:100 #3 0x00007fff690bf727 in rte_delay_us_block (us=100) at ../src-dpdk/lib/eal/common/eal_common_timer.c:34 #4 0x00007fff6c4e8442 in rte_delay_us_override_cb (us=100) at /root/code/net-base/.vpp-22.02/src/plugins/dpdk/main.c:77 #5 0x00007fff6afe1e98 in __hn_nvs_execute (hv=0x7fe63ffb1380, req=0x7fff64774f00, reqlen=40, resp=0x7fff64774ef0, resplen=16, type=2) at ../src-dpdk/drivers/net/netvsc/hn_nvs.c:83 #6 0x00007fff6afe20a1 in hn_nvs_execute (hv=0x7fe63ffb1380, req=0x7fff64774f00, reqlen=40, resp=0x7fff64774ef0, resplen=16, type=2) at ../src-dpdk/drivers/net/netvsc/hn_nvs.c:146 #7 0x00007fff6afe2119 in hn_nvs_doinit (hv=0x7fe63ffb1380, nvs_ver=393217) at ../src-dpdk/drivers/net/netvsc/hn_nvs.c:165 #8 0x00007fff6afe2843 in hn_nvs_init (hv=0x7fe63ffb1380) at ../src-dpdk/drivers/net/netvsc/hn_nvs.c:420 #9 0x00007fff6afe2999 in hn_nvs_attach (hv=0x7fe63ffb1380, mtu=1500) at ../src-dpdk/drivers/net/netvsc/hn_nvs.c:454 #10 0x00007fff6afe14bd in hn_attach (hv=0x7fe63ffb1380, mtu=1500) at ../src-dpdk/drivers/net/netvsc/hn_ethdev.c:1059 #11 0x00007fff6afe1874 in eth_hn_dev_init (eth_dev=0x7fff6cff9180 <rte_eth_devices>) at ../src-dpdk/drivers/net/netvsc/hn_ethdev.c:1167 #12 0x00007fff6afe1b89 in eth_hn_probe (drv=0x7fff6cbe5300 <rte_netvsc_pmd>, dev=0x612000014a40) at ../src-dpdk/drivers/net/netvsc/hn_ethdev.c:1253 #13 0x00007fff68769c06 in vmbus_probe_one_driver (dr=0x7fff6cbe5300 <rte_netvsc_pmd>, dev=0x612000014a40) at ../src-dpdk/drivers/bus/vmbus/vmbus_common.c:124 #14 0x00007fff68769cb4 in vmbus_probe_all_drivers (dev=0x612000014a40) at ../src-dpdk/drivers/bus/vmbus/vmbus_common.c:154 #15 0x00007fff68769d49 in rte_vmbus_probe () at ../src-dpdk/drivers/bus/vmbus/vmbus_common.c:185 #16 0x00007fff6909df35 in rte_bus_probe () at ../src-dpdk/lib/eal/common/eal_common_bus.c:72 #17 0x00007fff690dd36a in rte_eal_init (argc=9, argv=0x7fff77b7c7a0) at ../src-dpdk/lib/eal/linux/eal.c:1286 #18 0x00007fff6c565759 in dpdk_config (vm=0x7fff6fbff680, input=0x7fff6cc2a9e8 <_vlib_config_function_dpdk_config+8>) at /root/code/net-base/.vpp-22.02/src/plugins/dpdk/device/init.c:1286 #19 0x00007ffff47376b3 in vlib_call_all_config_functions (vm=0x7fff6fbff680, input=0x7fff64775f70, is_early=0) at /root/code/net-base/.vpp-22.02/src/vlib/init.c:476 #20 0x00007ffff4774e37 in vlib_main (vm=0x7fff6fbff680, input=0x7fff64775f70) at /root/code/net-base/.vpp-22.02/src/vlib/main.c:1979 #21 0x00007ffff480f380 in thread0 (arg=140735068239488) at /root/code/net-base/.vpp-22.02/src/vlib/unix/main.c:671 #22 0x00007ffff3f43790 in clib_calljmp () at /root/code/net-base/.vpp-22.02/src/vppinfra/longjmp.S:123 #23 0x00007fffffffcab0 in ?? () #24 0x00007ffff48100da in vlib_unix_main (argc=208, argv=0x61c000000080) at /root/code/net-base/.vpp-22.02/src/vlib/unix/main.c:751 #25 0x000000000040a544 in main (argc=208, argv=0x61c000000080) at /root/code/net-base/.vpp-22.02/src/vpp/vnet/main.c:342 (gdb) ```
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#21307): https://lists.fd.io/g/vpp-dev/message/21307 Mute This Topic: https://lists.fd.io/mt/90759128/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-