[net,00/10] bpf: offload: check netdev pointer in the drivers and namespace trouble

Message ID 20171120045522.2188-1-jakub.kicinski@netronome.com
Headers show
  • bpf: offload: check netdev pointer in the drivers and namespace trouble
Related show


Jakub Kicinski Nov. 20, 2017, 4:55 a.m.

This series addresses some late comments and moves checking if program
has been loaded for the correct device to the drivers.  There are also
some problems with net namespaces which I didn't take into consideration.
On the kernel side we will now simply ignore namespace moves.  Since the
user space API is not reporting any namespace identification we have to
remove the ifindex until a correct way of reporting is agreed upon.

Jakub Kicinski (10):
  bpf: offload: add comment warning developers about double destroy
  bpf: offload: limit offload to cls_bpf and xdp programs only
  bpf: offload: rename the ifindex field
  bpf: offload: move offload device validation out to the drivers
  net: xdp: don't allow device-bound programs in driver mode
  bpf: turn bpf_prog_get_type() into a wrapper
  bpf: offload: ignore namespace moves
  bpftool: revert printing program device bound info
  bpf: revert report offload info to user space
  bpf: make bpf_prog_offload_verifier_prep() static inline

 drivers/net/ethernet/netronome/nfp/bpf/offload.c | 10 ++++--
 include/linux/bpf.h                              | 18 +++++------
 include/linux/bpf_verifier.h                     |  2 +-
 include/uapi/linux/bpf.h                         |  8 +----
 kernel/bpf/offload.c                             | 27 +++++++---------
 kernel/bpf/syscall.c                             | 40 ++++++++----------------
 net/core/dev.c                                   | 14 ++++++---
 net/sched/cls_bpf.c                              |  8 ++---
 tools/bpf/bpftool/prog.c                         | 31 ------------------
 tools/include/uapi/linux/bpf.h                   |  8 +----
 10 files changed, 56 insertions(+), 110 deletions(-)