From mboxrd@z Thu Jan 1 00:00:00 1970 From: "John W. Linville" Subject: Re: [PATCH] librte_pmd_packet: add PMD for AF_PACKET-based virtual devices Date: Fri, 11 Jul 2014 14:46:48 -0400 Message-ID: <20140711184648.GH25478@tuxdriver.com> References: <1405024369-30058-1-git-send-email-linville@tuxdriver.com> <20140711174042.GE25478@tuxdriver.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: "dev-VfR2kkLFssw@public.gmane.org" To: "Zhou, Danny" Return-path: Content-Disposition: inline In-Reply-To: List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces-VfR2kkLFssw@public.gmane.org Sender: "dev" Not sure what the issue might be, PACKET_FANOUT_FLAG_ROLLOVER is defined in include/uapi/linux/if_packet.h in the v3.12 tree. On Fri, Jul 11, 2014 at 06:01:27PM +0000, Zhou, Danny wrote: > 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-2XuSBdqkA4R54TAoqtyWWQ@public.gmane.org] > > Sent: Saturday, July 12, 2014 1:41 AM > > To: Zhou, Danny > > Cc: dev-VfR2kkLFssw@public.gmane.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-2XuSBdqkA4R54TAoqtyWWQ@public.gmane.org might be all we have. Be ready. > -- John W. Linville Someday the world will need a hero, and you linville-2XuSBdqkA4R54TAoqtyWWQ@public.gmane.org might be all we have. Be ready.