> -----Original Message----- > From: Ilias Apalodimas <ilias.apalodi...@linaro.org> > Sent: Friday, December 7, 2018 7:52 PM > To: Ioana Ciocoi Radulescu <ruxandra.radule...@nxp.com> > Cc: Jesper Dangaard Brouer <bro...@redhat.com>; > netdev@vger.kernel.org; da...@davemloft.net; Ioana Ciornei > <ioana.cior...@nxp.com>; dsah...@gmail.com; Camelia Alexandra Groza > <camelia.gr...@nxp.com> > Subject: Re: [PATCH v2 net-next 0/8] dpaa2-eth: Introduce XDP support > > Hi Ioana, > > > > > > > > I only did a quick grep around the driver so i might be missing something, > > > but i can only see allocations via napi_alloc_frag(). XDP requires pages > > > (either a single page per packet or a driver that does the page > management > > > of > > > its own and fits 2 frames in a single page, assuming 4kb pages). > > > Am i missing something on the driver? > > > > No, I guess I'm the one missing stuff, I didn't realise single page per > > packet > > is a hard requirement for XDP. Could you point me to more info on this? > > > > Well if you don't have to use 64kb pages you can use the page_pool API (only > used from mlx5 atm) and get the xdp recycling for free. The memory 'waste' > for > 4kb pages isn't too much if the platforms the driver sits on have decent > amounts > of memory (and the number of descriptors used is not too high). > We still have work in progress with Jesper (just posted an RFC)with > improvements > on the API. > Using it is fairly straightforward. This is a patchset on marvell's mvneta > driver with the API changes needed: > https://www.spinics.net/lists/netdev/msg538285.html > > If you need 64kb pages you would have to introduce page recycling and > sharing > like intel/mlx drivers on your driver.
Thanks a lot for the info, will look into this. Do you have any pointers as to why the full page restriction exists in the first place? Sorry if it's a dumb question, but I haven't found details on this and I'd really like to understand it. Thanks Ioana