[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20180717175329.12386-1-jakub.kicinski@netronome.com>
Date: Tue, 17 Jul 2018 10:53:18 -0700
From: Jakub Kicinski <jakub.kicinski@...ronome.com>
To: alexei.starovoitov@...il.com, daniel@...earbox.net
Cc: netdev@...r.kernel.org, oss-drivers@...ronome.com,
Jakub Kicinski <jakub.kicinski@...ronome.com>
Subject: [PATCH bpf-next v2 00/11] bpf: offload: program and map sharing
Hi!
This patchset adds support for sharing BPF objects within one ASIC.
This will allow us to reuse of the same program on multiple ports of
a device leading to better code store utilization. It also enables
sharing maps between programs attached to different ports of a device.
v2:
- rename bpf_offload_match() to bpf_offload_prog_map_match();
- add split patches 7 into 5, 7 and 8.
Jakub Kicinski (11):
netdevsim: add switch_id attribute
netdevsim: add shared netdevsim devices
netdevsim: associate bound programs with shared dev
nfp: add .ndo_init() and .ndo_uninit() callbacks
bpf: offload: rename bpf_offload_dev_match() to
bpf_offload_prog_map_match()
bpf: offload: aggregate offloads per-device
bpf: offload: keep the offload state per-ASIC
bpf: offload: allow program and map sharing per-ASIC
netdevsim: allow program sharing between devices
nfp: bpf: allow program sharing within ASIC
selftests/bpf: add test for sharing objects between netdevs
drivers/net/ethernet/netronome/nfp/bpf/main.c | 23 ++
drivers/net/ethernet/netronome/nfp/bpf/main.h | 4 +
.../net/ethernet/netronome/nfp/bpf/offload.c | 10 +-
drivers/net/ethernet/netronome/nfp/nfp_app.c | 17 ++
drivers/net/ethernet/netronome/nfp/nfp_app.h | 8 +
.../ethernet/netronome/nfp/nfp_net_common.c | 2 +
.../net/ethernet/netronome/nfp/nfp_net_repr.c | 2 +
drivers/net/netdevsim/bpf.c | 50 +++-
drivers/net/netdevsim/netdev.c | 103 +++++++-
drivers/net/netdevsim/netdevsim.h | 23 +-
include/linux/bpf.h | 11 +-
kernel/bpf/offload.c | 223 ++++++++++++++----
kernel/bpf/verifier.c | 2 +-
tools/testing/selftests/bpf/test_offload.py | 151 +++++++++++-
14 files changed, 544 insertions(+), 85 deletions(-)
--
2.17.1
Powered by blists - more mailing lists