From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wg0-f45.google.com (mail-wg0-f45.google.com [74.125.82.45]) by dpdk.org (Postfix) with ESMTP id B8D8E592B for ; Fri, 22 May 2015 10:05:39 +0200 (CEST) Received: by wgbgq6 with SMTP id gq6so10061819wgb.3 for ; Fri, 22 May 2015 01:05:39 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:content-type; bh=tzFbcnSb4Cd1jk2tGhDzrV8G7JriqnnWYrzVZx81dsg=; b=DJ1QlEi/feRGojLABQ9eaY+CqLjS8TSz4EMFvvSxuFhEJJs6FlicM0cGsQSrZTFAvv fa88YbaapVU4HWob57hnY0wc9YzqZs257wWEzrISgEMK7j9M1E08zLPOfBYEIhWVZz9O /ToEY0De6CJxyMeEa6IHAADJDWbm0vf5veYJVpoNnuR0eouLlThn+4vpWnsTWnQueayt Sf2K1KZYwILd8IDKKSHe8C8z467gstsKgRzoitUGTy/dD3oJ6UicNH4d8pM+CWggP5KA RRDrsNy0PvHQOyxZ0+vdeC4xid6rmMsvvTI8PKQgSxgK5yzk/8vUy346Bf5J0MjSuOGC w1/A== X-Gm-Message-State: ALoCoQk3a6v4SH6HfTguXy99m6RSrnm5jSrd0GLXFrFG74SBinPnFd85hVSXpSJyKn+lWoQbo3iP MIME-Version: 1.0 X-Received: by 10.194.200.194 with SMTP id ju2mr12533897wjc.61.1432281939503; Fri, 22 May 2015 01:05:39 -0700 (PDT) Received: by 10.27.127.86 with HTTP; Fri, 22 May 2015 01:05:39 -0700 (PDT) In-Reply-To: <47CEA9C0E570484FBF22EF0D7EBCE5B534AC4253@szxema505-mbs.china.huawei.com> References: <47CEA9C0E570484FBF22EF0D7EBCE5B534AC4253@szxema505-mbs.china.huawei.com> Date: Fri, 22 May 2015 10:05:39 +0200 Message-ID: From: Maciej Grochowski To: "Gaohaifeng (A)" , dev@dpdk.org Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Subject: Re: [dpdk-dev] FW: Vhost user no connection vm2vm X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 22 May 2015 08:05:39 -0000 Unfortunately not, I have the same issue in rte_vhost_dequeue_burst function. What kernel version are You using on host/guest? In my case on host I had 3.13.0 and on guests old 3.2 debian. I just looked deeper into virtio back-end (vhost) but at first glace it seems like nothing coming from virtio. What I'm going to do today is to compile newest kernel for vhost and guest and debug where packet flow stuck, I will report the result On Thu, May 21, 2015 at 11:12 AM, Gaohaifeng (A) wrote: > Hi Maciej > Did you solve your problem? I meet this problem as your case. And > I found avail_idx(in rte_vhost_dequeue_burst function) is always zero > although I do send packets in VM. > > Thanks. > > > > Hello, I have strange issue with example/vhost app. > > > > I had compiled DPDK to run a vhost example app with followed flags > > > > CONFIG_RTE_LIBRTE_VHOST=y > > CONFIG_RTE_LIBRTE_VHOST_USER=y > > CONFIG_RTE_LIBRTE_VHOST_DEBUG=n > > > > then I run vhost app based on documentation: > > > > ./build/app/vhost-switch -c f -n 4 --huge-dir /mnt/huge --socket-mem > > 3712 > > -- -p 0x1 --dev-basename usvhost --vm2vm 1 --stats 9 > > > > -I use this strange --socket-mem 3712 because of physical limit of > > memoryon device -with this vhost user I run two KVM machines with > > followed parameters > > > > kvm -nographic -boot c -machine pc-i440fx-1.4,accel=kvm -name vm1 -cpu > > host -smp 2 -hda /home/ubuntu/qemu/debian_squeeze2_amd64.qcow2 -m > > 1024 -mem-path /mnt/huge -mem-prealloc -chardev > > socket,id=char1,path=/home/ubuntu/dpdk/examples/vhost/usvhost > > -netdev type=vhost-user,id=hostnet1,chardev=char1 > > -device virtio-net > > pci,netdev=hostnet1,id=net1,csum=off,gso=off,guest_tso4=off,guest_tso6 > > = > > off,guest_ecn=off > > -chardev > > socket,id=char2,path=/home/ubuntu/dpdk/examples/vhost/usvhost > > -netdev type=vhost-user,id=hostnet2,chardev=char2 > > -device > > virtio-net- > > pci,netdev=hostnet2,id=net2,csum=off,gso=off,guest_tso4=off,guest_tso6 > > = > > off,guest_ecn=off > > > > After running KVM virtio correctly starting (below logs from vhost app) > ... > > VHOST_CONFIG: mapped region 0 fd:31 to 0x2aaabae00000 sz:0xa0000 > > off:0x0 > > VHOST_CONFIG: mapped region 1 fd:37 to 0x2aaabb000000 sz:0x10000000 > > off:0xc0000 > > VHOST_CONFIG: read message VHOST_USER_SET_VRING_NUM > > VHOST_CONFIG: read message VHOST_USER_SET_VRING_BASE > > VHOST_CONFIG: read message VHOST_USER_SET_VRING_ADDR > > VHOST_CONFIG: read message VHOST_USER_SET_VRING_KICK > > VHOST_CONFIG: vring kick idx:0 file:38 > > VHOST_CONFIG: virtio isn't ready for processing. > > VHOST_CONFIG: read message VHOST_USER_SET_VRING_NUM > > VHOST_CONFIG: read message VHOST_USER_SET_VRING_BASE > > VHOST_CONFIG: read message VHOST_USER_SET_VRING_ADDR > > VHOST_CONFIG: read message VHOST_USER_SET_VRING_KICK > > VHOST_CONFIG: vring kick idx:1 file:39 > > VHOST_CONFIG: virtio is now ready for processing. > > VHOST_DATA: (1) Device has been added to data core 2 > > > > So everything looking good. > > > > Maybe it is something trivial but using options: --vm2vm 1 (or) 2 > > --stats 9 it seems that I didn't have connection between VM2VM > > communication. I set manually IP for eth0 and eth1: > > > > on 1 VM > > ifconfig eth0 192.168.0.100 netmask 255.255.255.0 up ifconfig eth1 > > 192.168.1.101 netmask 255.255.255.0 up > > > > on 2 VM > > ifconfig eth0 192.168.1.200 netmask 255.255.255.0 up ifconfig eth1 > > 192.168.0.202 netmask 255.255.255.0 up > > > > I notice that in vhostapp are one directional rx/tx queue so I tryied > > to ping between VM1 to VM2 using both interfaces ping -I eth0 > > 192.168.1.200 ping -I > > eth1 192.168.1.200 ping -I eth0 192.168.0.202 ping -I eth1 > > 192.168.0.202 > > > > on VM2 using tcpdump on both interfaces I didn't see any ICMP requests > > or traffic > > > > And I cant ping between any IP/interfaces, moreover stats show me that: > > > > Device statistics ==================================== > > Statistics for device 0 ------------------------------ > > TX total: 0 > > TX dropped: 0 > > TX successful: 0 > > RX total: 0 > > RX dropped: 0 > > RX successful: 0 > > Statistics for device 1 ------------------------------ > > TX total: 0 > > TX dropped: 0 > > TX successful: 0 > > RX total: 0 > > RX dropped: 0 > > RX successful: 0 > > Statistics for device 2 ------------------------------ > > TX total: 0 > > TX dropped: 0 > > TX successful: 0 > > RX total: 0 > > RX dropped: 0 > > RX successful: 0 > > Statistics for device 3 ------------------------------ > > TX total: 0 > > TX dropped: 0 > > TX successful: 0 > > RX total: 0 > > RX dropped: 0 > > RX successful: 0 > > ====================================================== > > > > So it seems like any packet didn't leave my VM. > > also arp table is empty on each VM. > >