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 <rte_eth_devices>, 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$ ```
-=-=-=-=-=-=-=-=-=-=-=- 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] -=-=-=-=-=-=-=-=-=-=-=-