All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH RFC v1 00/15] XDP extend with knowledge of frame size
@ 2020-03-17 17:29 Jesper Dangaard Brouer
  2020-03-17 17:29 ` [PATCH RFC v1 01/15] xdp: add frame size to xdp_buff Jesper Dangaard Brouer
                   ` (14 more replies)
  0 siblings, 15 replies; 29+ messages in thread
From: Jesper Dangaard Brouer @ 2020-03-17 17:29 UTC (permalink / raw)
  To: sameehj
  Cc: thomas.petazzoni, Andy Gospodarek, Jeff Kirsher, Michael Chan,
	Jesper Dangaard Brouer, netdev, bpf, zorik, akiyano, gtzalik,
	Toke Høiland-Jørgensen, Daniel Borkmann,
	Alexei Starovoitov, John Fastabend, Alexander Duyck,
	Jeff Kirsher, David Ahern, Willem de Bruijn, Ilias Apalodimas,
	Lorenzo Bianconi

Early RFC *before* I finish converting all drivers... so I can get
feedback that might affect the design...

XDP have evolved to support several frame sizes, but xdp_buff was not
updated with this information. This have caused the side-effect that XDP
frame data hard end is not known. It also limited the BPF-helper
bpf_xdp_adjust_tail to only shrink the packet.

This patchset tries to address this and add packet tail extend/grow.

The purpose of the patchset is ALSO to reserve a memory area that can be
used for storing extra information, specifically for extending XDP with
multi-buffer support. One proposal is to use same layout as
skb_shared_info, which is why this area is currently 320 bytes.

---

Jesper Dangaard Brouer (15):
      xdp: add frame size to xdp_buff
      mvneta: add XDP frame size to driver
      bnxt: add XDP frame size to driver
      ixgbe: fix XDP redirect on archs with PAGE_SIZE above 4K
      ixgbe: add XDP frame size to driver
      sfc: fix XDP-redirect in this driver
      sfc: add XDP frame size
      xdp: allow bpf_xdp_adjust_tail() to grow packet size
      xdp: clear grow memory in bpf_xdp_adjust_tail()
      net: XDP-generic determining XDP frame size
      xdp: xdp_frame add member frame_sz and handle in convert_to_xdp_frame
      xdp: cpumap redirect use frame_sz and increase skb_tailroom
      tun: add XDP frame size
      veth: xdp using frame_sz in veth driver
      dpaa2-eth: add XDP frame size


 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c    |    1 +
 drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c |    1 +
 drivers/net/ethernet/intel/ixgbe/ixgbe.h         |   17 ++++++++++++
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c    |   17 +++++++-----
 drivers/net/ethernet/marvell/mvneta.c            |    1 +
 drivers/net/ethernet/sfc/efx_common.c            |    9 ++++--
 drivers/net/ethernet/sfc/net_driver.h            |    6 ++++
 drivers/net/ethernet/sfc/rx.c                    |    3 +-
 drivers/net/ethernet/sfc/rx_common.c             |    6 ++--
 drivers/net/tun.c                                |    2 +
 drivers/net/veth.c                               |   15 +++++++++--
 include/net/xdp.h                                |   31 +++++++++++++++++++++-
 include/uapi/linux/bpf.h                         |    4 +--
 kernel/bpf/cpumap.c                              |   21 ++-------------
 net/core/dev.c                                   |   14 ++++++----
 net/core/filter.c                                |   24 ++++++++++++++++-
 net/core/xdp.c                                   |    7 +++++
 17 files changed, 133 insertions(+), 46 deletions(-)

--


^ permalink raw reply	[flat|nested] 29+ messages in thread

end of thread, other threads:[~2020-03-23 14:45 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-17 17:29 [PATCH RFC v1 00/15] XDP extend with knowledge of frame size Jesper Dangaard Brouer
2020-03-17 17:29 ` [PATCH RFC v1 01/15] xdp: add frame size to xdp_buff Jesper Dangaard Brouer
2020-03-17 20:42   ` Jakub Kicinski
2020-03-18  6:58     ` Jesper Dangaard Brouer
2020-03-17 17:29 ` [PATCH RFC v1 02/15] mvneta: add XDP frame size to driver Jesper Dangaard Brouer
2020-03-17 17:29 ` [PATCH RFC v1 03/15] bnxt: " Jesper Dangaard Brouer
2020-03-20 19:22   ` Andy Gospodarek
2020-03-23 14:18   ` Andy Gospodarek
2020-03-23 14:44     ` Jesper Dangaard Brouer
2020-03-17 17:29 ` [PATCH RFC v1 04/15] ixgbe: fix XDP redirect on archs with PAGE_SIZE above 4K Jesper Dangaard Brouer
2020-03-17 17:29 ` [PATCH RFC v1 05/15] ixgbe: add XDP frame size to driver Jesper Dangaard Brouer
2020-03-18 20:03   ` Maciej Fijalkowski
2020-03-18 21:23     ` Alexander Duyck
2020-03-20 21:44       ` Jesper Dangaard Brouer
2020-03-20 22:37         ` Alexander Duyck
2020-03-17 17:29 ` [PATCH RFC v1 06/15] sfc: fix XDP-redirect in this driver Jesper Dangaard Brouer
2020-03-17 17:29 ` [PATCH RFC v1 07/15] sfc: add XDP frame size Jesper Dangaard Brouer
2020-03-17 17:29 ` [PATCH RFC v1 08/15] xdp: allow bpf_xdp_adjust_tail() to grow packet size Jesper Dangaard Brouer
2020-03-17 17:29 ` [PATCH RFC v1 09/15] xdp: clear grow memory in bpf_xdp_adjust_tail() Jesper Dangaard Brouer
2020-03-17 20:38   ` Jakub Kicinski
2020-03-18  9:15   ` Toke Høiland-Jørgensen
2020-03-18 10:25     ` Jesper Dangaard Brouer
2020-03-19  5:35       ` Alexei Starovoitov
2020-03-17 17:29 ` [PATCH RFC v1 10/15] net: XDP-generic determining XDP frame size Jesper Dangaard Brouer
2020-03-17 17:30 ` [PATCH RFC v1 11/15] xdp: xdp_frame add member frame_sz and handle in convert_to_xdp_frame Jesper Dangaard Brouer
2020-03-17 17:30 ` [PATCH RFC v1 12/15] xdp: cpumap redirect use frame_sz and increase skb_tailroom Jesper Dangaard Brouer
2020-03-17 17:30 ` [PATCH RFC v1 13/15] tun: add XDP frame size Jesper Dangaard Brouer
2020-03-17 17:30 ` [PATCH RFC v1 14/15] veth: xdp using frame_sz in veth driver Jesper Dangaard Brouer
2020-03-17 17:30 ` [PATCH RFC v1 15/15] dpaa2-eth: add XDP frame size Jesper Dangaard Brouer

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.