netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next 00/15] bpf: add offload as a first class citizen
@ 2017-11-03  6:30 Jakub Kicinski
  2017-11-03  6:30 ` [PATCH net-next 01/15] net: bpf: rename ndo_xdp to ndo_bpf Jakub Kicinski
                   ` (14 more replies)
  0 siblings, 15 replies; 16+ messages in thread
From: Jakub Kicinski @ 2017-11-03  6:30 UTC (permalink / raw)
  To: netdev; +Cc: oss-drivers, alexei.starovoitov, daniel, Jakub Kicinski

Hi!

This series is my stab at what was discussed at a recent IOvisor
bi-weekly call.  The idea is to make the device translator run at
the program load time.  This makes the offload more explicit to
the user space.  It also makes it easy for the device translator
to insert information into the original verifier log.

v1:
 - rename the ifindex member on load;
 - improve commit messages;
 - split nfp patches more.


Jakub Kicinski (15):
  net: bpf: rename ndo_xdp to ndo_bpf
  bpf: offload: add infrastructure for loading programs for a specific
    netdev
  bpf: report offload info to user space
  bpftool: print program device bound info
  xdp: allow attaching programs loaded for specific device
  cls_bpf: allow attaching programs loaded for specific device
  nfp: bpf: drop support for cls_bpf with legacy actions
  nfp: bpf: remove the register renumbering leftovers
  nfp: bpf: remove unnecessary include of nfp_net.h
  nfp: bpf: refactor offload logic
  nfp: bpf: require seamless reload for program replace
  nfp: bpf: move program prepare and free into offload.c
  nfp: bpf: move translation prepare to offload.c
  nfp: bpf: move to new BPF program offload infrastructure
  bpf: remove old offload/analyzer

 drivers/net/ethernet/broadcom/bnxt/bnxt.c          |   2 +-
 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.c      |   2 +-
 drivers/net/ethernet/broadcom/bnxt/bnxt_xdp.h      |   2 +-
 drivers/net/ethernet/cavium/thunder/nicvf_main.c   |   4 +-
 drivers/net/ethernet/intel/i40e/i40e_main.c        |   6 +-
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c      |   4 +-
 drivers/net/ethernet/mellanox/mlx4/en_netdev.c     |   6 +-
 drivers/net/ethernet/mellanox/mlx5/core/en_main.c  |   4 +-
 drivers/net/ethernet/netronome/nfp/bpf/jit.c       | 194 ++------------
 drivers/net/ethernet/netronome/nfp/bpf/main.c      |  87 +++----
 drivers/net/ethernet/netronome/nfp/bpf/main.h      |  59 ++---
 drivers/net/ethernet/netronome/nfp/bpf/offload.c   | 282 +++++++++------------
 drivers/net/ethernet/netronome/nfp/bpf/verifier.c  |  54 +---
 drivers/net/ethernet/netronome/nfp/nfp_app.h       |  37 +++
 drivers/net/ethernet/netronome/nfp/nfp_net.h       |   2 -
 .../net/ethernet/netronome/nfp/nfp_net_common.c    |  12 +-
 drivers/net/ethernet/qlogic/qede/qede.h            |   2 +-
 drivers/net/ethernet/qlogic/qede/qede_filter.c     |   2 +-
 drivers/net/ethernet/qlogic/qede/qede_main.c       |   4 +-
 drivers/net/tun.c                                  |   4 +-
 drivers/net/virtio_net.c                           |   4 +-
 include/linux/bpf.h                                |  47 ++++
 include/linux/bpf_verifier.h                       |  13 +-
 include/linux/netdevice.h                          |  37 ++-
 include/uapi/linux/bpf.h                           |   7 +
 kernel/bpf/Makefile                                |   1 +
 kernel/bpf/core.c                                  |  10 +-
 kernel/bpf/offload.c                               | 194 ++++++++++++++
 kernel/bpf/syscall.c                               |  52 +++-
 kernel/bpf/verifier.c                              |  82 +-----
 net/core/dev.c                                     |  40 +--
 net/core/filter.c                                  |  42 ---
 net/core/rtnetlink.c                               |   4 +-
 net/sched/cls_bpf.c                                |  10 +-
 tools/bpf/bpftool/prog.c                           |  31 +++
 tools/include/uapi/linux/bpf.h                     |   7 +
 36 files changed, 686 insertions(+), 664 deletions(-)
 create mode 100644 kernel/bpf/offload.c

-- 
2.14.1

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

end of thread, other threads:[~2017-11-03  6:38 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-11-03  6:30 [PATCH net-next 00/15] bpf: add offload as a first class citizen Jakub Kicinski
2017-11-03  6:30 ` [PATCH net-next 01/15] net: bpf: rename ndo_xdp to ndo_bpf Jakub Kicinski
2017-11-03  6:30 ` [PATCH net-next 02/15] bpf: offload: add infrastructure for loading programs for a specific netdev Jakub Kicinski
2017-11-03  6:30 ` [PATCH net-next 03/15] bpf: report offload info to user space Jakub Kicinski
2017-11-03  6:30 ` [PATCH net-next 04/15] bpftool: print program device bound info Jakub Kicinski
2017-11-03  6:30 ` [PATCH net-next 05/15] xdp: allow attaching programs loaded for specific device Jakub Kicinski
2017-11-03  6:31 ` [PATCH net-next 06/15] cls_bpf: " Jakub Kicinski
2017-11-03  6:31 ` [PATCH net-next 07/15] nfp: bpf: drop support for cls_bpf with legacy actions Jakub Kicinski
2017-11-03  6:31 ` [PATCH net-next 08/15] nfp: bpf: remove the register renumbering leftovers Jakub Kicinski
2017-11-03  6:31 ` [PATCH net-next 09/15] nfp: bpf: remove unnecessary include of nfp_net.h Jakub Kicinski
2017-11-03  6:31 ` [PATCH net-next 10/15] nfp: bpf: refactor offload logic Jakub Kicinski
2017-11-03  6:31 ` [PATCH net-next 11/15] nfp: bpf: require seamless reload for program replace Jakub Kicinski
2017-11-03  6:31 ` [PATCH net-next 12/15] nfp: bpf: move program prepare and free into offload.c Jakub Kicinski
2017-11-03  6:31 ` [PATCH net-next 13/15] nfp: bpf: move translation prepare to offload.c Jakub Kicinski
2017-11-03  6:31 ` [PATCH net-next 14/15] nfp: bpf: move to new BPF program offload infrastructure Jakub Kicinski
2017-11-03  6:31 ` [PATCH net-next 15/15] bpf: remove old offload/analyzer Jakub Kicinski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).