On Tue, Apr 17, 2018 at 04:45:16PM +0200, Jesper Dangaard Brouer wrote: > Submitted against net-next, as it contains NIC driver changes. > > This patchset works towards supporting different XDP RX-ring memory > allocators. As this will be needed by the AF_XDP zero-copy mode. > > The patchset uses mlx5 as the sample driver, which gets implemented > XDP_REDIRECT RX-mode, but not ndo_xdp_xmit (as this API is subject to > change thought the patchset). > > A new struct xdp_frame is introduced (modeled after cpumap xdp_pkt). > And both ndo_xdp_xmit and the new xdp_return_frame end-up using this. > > Support for a driver supplied allocator is implemented, and a > refurbished version of page_pool is the first return allocator type > introduced. This will be a integration point for AF_XDP zero-copy. > > The mlx5 driver evolve into using the page_pool, and see a performance > increase (with ndo_xdp_xmit out ixgbe driver) from 6Mpps to 12Mpps. > > > The patchset stop at 16 patches (one over limit), but more API changes > are planned. Specifically extending ndo_xdp_xmit and xdp_return_frame > APIs to support bulking. As this will address some known limits. > > V2: Updated according to Tariq's feedback > V3: Updated based on feedback from Jason Wang and Alex Duyck > V4: Updated based on feedback from Tariq and Jason > V5: Fix SPDX license, add Tariq's reviews, improve patch desc for perf test > V6: Updated based on feedback from Eric Dumazet and Alex Duyck > V7: Adapt to i40e that got XDP_REDIRECT support in-between > V8: > Updated based on feedback kbuild test robot, and adjust for mlx5 changes > page_pool only compiled into kernel when drivers Kconfig 'select' feature > V9: > Remove some inline statements, let compiler decide what to inline > Fix return value in virtio_net driver > Adjust for mlx5 changes in-between submissions > V10: > Minor adjust for mlx5 requested by Tariq > Resubmit against net-next > V11: avoid leaking info stored in frame data on page reuse
Thanks. The series look good to me now. Acked-by: Alexei Starovoitov <a...@kernel.org>