From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp.tuxdriver.com (charlotte.tuxdriver.com [70.61.120.58]) by dpdk.org (Postfix) with ESMTP id 865541FE for ; Fri, 11 Jul 2014 22:44:41 +0200 (CEST) Received: from uucp by smtp.tuxdriver.com with local-rmail (Exim 4.63) (envelope-from ) id 1X5hgr-0007Ws-GB; Fri, 11 Jul 2014 16:45:09 -0400 Received: from linville-x1.hq.tuxdriver.com (localhost.localdomain [127.0.0.1]) by linville-x1.hq.tuxdriver.com (8.14.8/8.14.6) with ESMTP id s6BKevNL006275; Fri, 11 Jul 2014 16:40:57 -0400 Received: (from linville@localhost) by linville-x1.hq.tuxdriver.com (8.14.8/8.14.8/Submit) id s6BKev8i006274; Fri, 11 Jul 2014 16:40:57 -0400 Date: Fri, 11 Jul 2014 16:40:56 -0400 From: "John W. Linville" To: "Zhou, Danny" Message-ID: <20140711204056.GM25478@tuxdriver.com> References: <1405024369-30058-1-git-send-email-linville@tuxdriver.com> <20140711174042.GE25478@tuxdriver.com> <20140711193139.GJ25478@tuxdriver.com> <4032A54B6BB5F04B8C08B6CFF08C59285544ECD5@FMSMSX103.amr.corp.intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.23 (2014-03-12) Cc: "dev@dpdk.org" Subject: Re: [dpdk-dev] [PATCH] librte_pmd_packet: add PMD for AF_PACKET-based virtual devices 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, 11 Jul 2014 20:44:41 -0000 Ah, yes...sorry, I misunderstood what you wanted to do. The syntax below is what I would expect to use. John On Fri, Jul 11, 2014 at 08:35:01PM +0000, Zhou, Danny wrote: > Thanks Jeff, it works as expected, like below command line: > > ./l2fwd/build/l2fwd -c 0x3 -n 4 --vdev=eth_packet0,iface=p786p1 --vdev=eth_packet1,iface=p786p2 -- -p 0x3 > > > -----Original Message----- > > From: Shaw, Jeffrey B > > Sent: Saturday, July 12, 2014 4:32 AM > > To: Zhou, Danny; John W. Linville > > Cc: dev@dpdk.org > > Subject: RE: [dpdk-dev] [PATCH] librte_pmd_packet: add PMD for > > AF_PACKET-based virtual devices > > > > Danny, can you specify multiple --vdev parameters? > > "--vdev=eth_packet0,iface=eth0 --vdev=eth_packet1,iface=eth1" > > > > > > -----Original Message----- > > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Zhou, Danny > > Sent: Friday, July 11, 2014 1:27 PM > > To: John W. Linville > > Cc: dev@dpdk.org > > Subject: Re: [dpdk-dev] [PATCH] librte_pmd_packet: add PMD for > > AF_PACKET-based virtual devices > > > > I want to run a common DPDK L2 or L3 forward benchmark for bi-direction traffics, > > so at least two ports are required. Just like how to measure Linux bridge or OVS > > performance, you need add at least two ports into a bridge. > > > > > -----Original Message----- > > > From: John W. Linville [mailto:linville@tuxdriver.com] > > > Sent: Saturday, July 12, 2014 3:32 AM > > > To: Zhou, Danny > > > Cc: dev@dpdk.org > > > Subject: Re: [dpdk-dev] [PATCH] librte_pmd_packet: add PMD for > > > AF_PACKET-based virtual devices > > > > > > I'm not sure that would make any sense -- the AF_PACKET sockets are > > > mapped to specific interfaces. > > > > > > What are you trying to do with a syntax like that? > > > > > > John > > > > > > On Fri, Jul 11, 2014 at 07:04:19PM +0000, Zhou, Danny wrote: > > > > Does it support specifying multiple NIC interfaces using command > > > > line option like > > > "--vdev=eth_packet0,iface=..."? Say "iface=eth0,eth1,eth2...", tried > > > but it doesn't work. > > > > > > > > > -----Original Message----- > > > > > From: Zhou, Danny > > > > > Sent: Saturday, July 12, 2014 2:01 AM > > > > > To: 'John W. Linville' > > > > > Cc: dev@dpdk.org > > > > > Subject: RE: [dpdk-dev] [PATCH] librte_pmd_packet: add PMD for > > > > > AF_PACKET-based virtual devices > > > > > > > > > > Tried on 3.12, both of them are undefined. Anyway, will comment > > > > > them out and see what performance it could achieve. > > > > > > > > > > > -----Original Message----- > > > > > > From: John W. Linville [mailto:linville@tuxdriver.com] > > > > > > Sent: Saturday, July 12, 2014 1:41 AM > > > > > > To: Zhou, Danny > > > > > > Cc: dev@dpdk.org > > > > > > Subject: Re: [dpdk-dev] [PATCH] librte_pmd_packet: add PMD for > > > > > > AF_PACKET-based virtual devices > > > > > > > > > > > > On Fri, Jul 11, 2014 at 05:20:42PM +0000, Zhou, Danny wrote: > > > > > > > Looks like you used a pretty new kernel version with new > > > > > > > socket options that old > > > > > > kernel like my 3.12 does not support. When I tried this patch, > > > > > > it just cannot build, and compiler complains like below. Which > > > > > > Linux distribution does this > > > > > patch work for? > > > > > > How to ensure it works for old kernels? > > > > > > > > > > > > > > /home/danny/dpdk.org/dpdk/lib/librte_pmd_packet/rte_eth_packet > > > > > > > .c > > > > > > > : In function > > > > > > rte_pmd_init_internals: > > > > > > > /home/danny/dpdk.org/dpdk/lib/librte_pmd_packet/rte_eth_packet > > > > > > > .c > > > > > > > :524 > > > > > > > :1 > > > > > > > 7: error: PACKET_FANOUT_FLAG_ROLLOVER undeclared (first use in > > > > > > > this > > > > > > > function) > > > > > > > /home/danny/dpdk.org/dpdk/lib/librte_pmd_packet/rte_eth_packet > > > > > > > .c > > > > > > > :524 > > > > > > > :1 > > > > > > > 7: note: each undeclared identifier is reported only once for > > > > > > > each function it appears in > > > > > > > /home/danny/dpdk.org/dpdk/lib/librte_pmd_packet/rte_eth_packet > > > > > > > .c > > > > > > > :557 > > > > > > > :3 > > > > > > > 3: error: PACKET_QDISC_BYPASS undeclared (first use in this > > > > > > > function) > > > > > > > > > > > > Both of them are isolated, so for playing with it you could just > > > > > > comment those > > > out. > > > > > > It looks like PACKET_FANOUT_FLAG_ROLLOVER should have been in > > > > > > 3.10, while PACKET_QDISC_BYPASS didn't show-up until 3.14... > > > > > > > > > > > > /home/linville/git/linux > > > > > > [linville-x1.hq.tuxdriver.com]:> git annotate > > > > > > include/uapi/linux/if_packet.h | grep PACKET_FANOUT_FLAG_ROLLOVER > > > > > > 77f65ebdca506 (Willem de Bruijn 2013-03-19 10:18:11 +0000 > > 64)#define > > > > > > PACKET_FANOUT_FLAG_ROLLOVER 0x1000 > > > > > > > > > > > > /home/linville/git/linux > > > > > > [linville-x1.hq.tuxdriver.com]:> git show -s --format=short > > > > > > 77f65ebdca506 commit 77f65ebdca506870d99bfabe52bde222511022ec > > > > > > Author: Willem de Bruijn > > > > > > > > > > > > packet: packet fanout rollover during socket overload > > > > > > > > > > > > /home/linville/git/linux > > > > > > [linville-x1.hq.tuxdriver.com]:> git describe --contains > > > > > > 77f65ebdca506 > > > > > > v3.10-rc1~66^2~423 > > > > > > > > > > > > /home/linville/git/linux > > > > > > [linville-x1.hq.tuxdriver.com]:> git annotate > > > > > > include/uapi/linux/if_packet.h | grep PACKET_QDISC_BYPASS > > > > > > d346a3fae3ff1 (Daniel Borkmann 2013-12-06 11:36:17 +0100 56)#define > > > > > > PACKET_QDISC_BYPASS 20 > > > > > > > > > > > > /home/linville/git/linux > > > > > > [linville-x1.hq.tuxdriver.com]:> git show -s --format=short > > > > > > d346a3fae3ff1 commit > > > > > > d346a3fae3ff1d99f5d0c819bf86edf9094a26a1 > > > > > > Author: Daniel Borkmann > > > > > > > > > > > > packet: introduce PACKET_QDISC_BYPASS socket option > > > > > > > > > > > > /home/linville/git/linux > > > > > > [linville-x1.hq.tuxdriver.com]:> git describe --contains > > > > > > d346a3fae3ff1 > > > > > > v3.14-rc1~94^2~564 > > > > > > > > > > > > Is there an example of code in DPDK that requires specific > > > > > > kernel versions? What is the preferred method for coding such > > dependencies? > > > > > > > > > > > > John > > > > > > -- > > > > > > John W. Linville Someday the world will need a hero, and you > > > > > > linville@tuxdriver.com might be all we have. Be ready. > > > > > > > > > > -- > > > John W. Linville Someday the world will need a hero, and you > > > linville@tuxdriver.com might be all we have. Be ready. > -- John W. Linville Someday the world will need a hero, and you linville@tuxdriver.com might be all we have. Be ready.