From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ie0-f176.google.com (mail-ie0-f176.google.com [209.85.223.176]) by dpdk.org (Postfix) with ESMTP id 44B36C4F0 for ; Mon, 29 Jun 2015 02:55:12 +0200 (CEST) Received: by iecvh10 with SMTP id vh10so105565567iec.3 for ; Sun, 28 Jun 2015 17:55:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=aEf1bNOPCeSY1XdBOaUpT/AhNppUqKc2da8F6UogoRA=; b=VTnbOQnNjI3ZDnBf7fFp3D7h3ISl5W04XFxlzNySDd3RVGTxqFJYtaTRO5Xs3fux3H wckD+B4xlWOcuDo79rXJl0+1/crFHKbCLYebAfxPJYgS6fHQo06EOqubzk4VGssSUMtc EdgONJRU6VYgTEdo5D69ifEA/SKmEaOzR8qXm5tgwodg4IOMA4sMK2QgZ1wEgY57I7+x 7jDxNO7nSuceywA3IYuexxSZn6L/GjFycubIh/kybowIMNvWv9Wh/gdBVOJUK+0zVXYh FSKf1VXQc5gsJ/b4RhnxfX2Aec/Qfl0/m6hP0Q/bTztw/LmGbx+noHLfu3yTEbGLqs/j Ulkg== MIME-Version: 1.0 X-Received: by 10.43.164.66 with SMTP id mr2mr15567364icc.85.1435539311669; Sun, 28 Jun 2015 17:55:11 -0700 (PDT) Received: by 10.64.156.229 with HTTP; Sun, 28 Jun 2015 17:55:11 -0700 (PDT) In-Reply-To: References: Date: Mon, 29 Jun 2015 06:25:11 +0530 Message-ID: From: Abhishek Verma To: Keunhong Lee Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Cc: "dev@dpdk.org" Subject: Re: [dpdk-dev] Interface once added to DPDK goes missing from ifconfig 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: Mon, 29 Jun 2015 00:55:12 -0000 Hi Keunhong, Thanks for the response. I was reading about KNI ( http://dpdk.org/doc/guides/sample_app_ug/kernel_nic_interface.html), and that seems to defeat the purpose of DPDK -- the whole point of using DPDK was to bypass the kernel. Now, when i implement KNI, then packets emanating from the DPDK get into the Linux kernel -- which is what i really wanted to avoid. Now that i have tied my eth2 to use a dpdk driver, then does it mean that any packet arriving on that NIC will directly come to my user space callback? Its like a raw socket -- so i will get all incoming packets with all payloads, and i will have to implement the IP stack in my user space now so that i can deal with that packet. Is my understanding correct here? If Yes, then what is the need of KNI? Isnt that violating the whole reason why we have DPDK? Thanks, Abhishek On Mon, Jun 29, 2015 at 5:46 AM, Keunhong Lee wrote: > DPDK's igb_uio driver does not generate 'netdev' interfaces, > so you cannot see any interface via ifconfig. > (However, they are registered as 'rte_eth_dev' in your DPDK application.) > > You'd better to use KNI drivers to have 'netdev' intefaces. > > Keunhong. > > > 2015-06-29 8:51 GMT+09:00 Abhishek Verma : > >> Hi, >> >> I have three ethernet interfaces in my VirtualBox as shown below: >> >> root@VirtualBox:/home/akabra/dpdk/dpdk-2.0.0/tools# ifconfig >> eth1 Link encap:Ethernet HWaddr 08:00:27:3f:34:56 >> inet addr:192.168.0.123 Bcast:192.168.0.255 Mask:255.255.255.0 >> inet6 addr: fe80::a00:27ff:fe3f:3456/64 Scope:Link >> UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 >> RX packets:132 errors:0 dropped:0 overruns:0 frame:0 >> TX packets:26 errors:0 dropped:0 overruns:0 carrier:0 >> collisions:0 txqueuelen:1000 >> RX bytes:20982 (20.9 KB) TX bytes:3724 (3.7 KB) >> >> eth2 Link encap:Ethernet HWaddr 08:00:27:f7:13:f5 >> inet addr:1.1.1.1 Bcast:1.1.1.255 Mask:255.255.255.0 >> inet6 addr: fe80::a00:27ff:fef7:13f5/64 Scope:Link >> UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 >> RX packets:51932 errors:0 dropped:0 overruns:0 frame:0 >> TX packets:660805 errors:0 dropped:0 overruns:0 carrier:0 >> collisions:0 txqueuelen:1000 >> RX bytes:32407739 (32.4 MB) TX bytes:1647410289 (1.6 GB) >> >> lo Link encap:Local Loopback >> inet addr:127.0.0.1 Mask:255.0.0.0 >> inet6 addr: ::1/128 Scope:Host >> UP LOOPBACK RUNNING MTU:65536 Metric:1 >> RX packets:1681 errors:0 dropped:0 overruns:0 frame:0 >> TX packets:1681 errors:0 dropped:0 overruns:0 carrier:0 >> collisions:0 txqueuelen:0 >> RX bytes:358901 (358.9 KB) TX bytes:358901 (358.9 KB) >> >> root@manav-VirtualBox:/home/globus/dpdk/dpdk-2.0.0/tools# >> ./dpdk_nic_bind.py --status >> >> >> >> Network devices using DPDK-compatible driver >> >> ============================================ >> >> >> >> Network devices using kernel driver >> >> =================================== >> >> 0000:00:03.0 '82540EM Gigabit Ethernet Controller' if=eth1 drv=e1000 >> unused=igb_uio,vfio-pci *Active* >> >> 0000:00:08.0 '82540EM Gigabit Ethernet Controller' if=eth2 drv=e1000 >> unused=igb_uio,vfio-pci *Active* >> >> >> I will now add eth2 to DPDK >> >> root@manav-VirtualBox:/home/globus/dpdk/dpdk-2.0.0/tools# sudo ifconfig >> eth2 down >> >> root@manav-VirtualBox:/home/globus/dpdk/dpdk-2.0.0/tools# >> ./dpdk_nic_bind.py -b igb_uio 0000:00:08.0 >> >> >> I now see that eth2 has been removed from my ifconfig output. I cant seem >> to understand why this has happened? >> >> >> root@manav-VirtualBox:/home/globus/dpdk/dpdk-2.0.0/tools# ifconfig >> >> eth1 Link encap:Ethernet HWaddr 08:00:27:3f:34:56 >> >> inet addr:192.168.0.123 Bcast:192.168.0.255 Mask:255.255.255.0 >> >> inet6 addr: fe80::a00:27ff:fe3f:3456/64 Scope:Link >> >> UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 >> >> RX packets:182 errors:0 dropped:0 overruns:0 frame:0 >> >> TX packets:86 errors:0 dropped:0 overruns:0 carrier:0 >> >> collisions:0 txqueuelen:1000 >> >> RX bytes:27757 (27.7 KB) TX bytes:12789 (12.7 KB) >> >> >> >> lo Link encap:Local Loopback >> >> inet addr:127.0.0.1 Mask:255.0.0.0 >> >> inet6 addr: ::1/128 Scope:Host >> >> UP LOOPBACK RUNNING MTU:65536 Metric:1 >> >> RX packets:1705 errors:0 dropped:0 overruns:0 frame:0 >> >> TX packets:1705 errors:0 dropped:0 overruns:0 carrier:0 >> >> collisions:0 txqueuelen:0 >> >> RX bytes:360948 (360.9 KB) TX bytes:360948 (360.9 KB) >> >> >> I see that it has been successfully recognized as an interface using DPDK >> driver, but why dont i see it in my ifconfig. Any ideas here? >> >> >> root@manav-VirtualBox:/home/globus/dpdk/dpdk-2.0.0/tools# >> ./dpdk_nic_bind.py --status >> >> >> >> Network devices using DPDK-compatible driver >> >> ============================================ >> >> 0000:00:08.0 '82540EM Gigabit Ethernet Controller' drv=igb_uio >> unused=vfio-pci >> >> >> >> Network devices using kernel driver >> >> =================================== >> >> 0000:00:03.0 '82540EM Gigabit Ethernet Controller' if=eth1 drv=e1000 >> unused=igb_uio,vfio-pci *Active* >> >> >> >> Other network devices >> >> >> Would appreciate some help here. >> >> >> Thanks, Abhishek >> > >