Merge branch 'bpf-nfp-map-offload'
authorDaniel Borkmann <daniel@iogearbox.net>
Sun, 14 Jan 2018 22:36:31 +0000 (23:36 +0100)
committerDaniel Borkmann <daniel@iogearbox.net>
Sun, 14 Jan 2018 22:36:32 +0000 (23:36 +0100)
commite3b073c7ca32c68ccd3827248ad84e16b8fa3d29
tree83288f9aaac80739a3e10556c62296584b9a2e20
parentfdde5f3b6ba402908b9e289626e6d817852e8300
parent1bba4c413a328bfd216d59a212bec371e032391b
Merge branch 'bpf-nfp-map-offload'

Jakub Kicinski says:

====================
This set adds support for creating maps on networking devices.  BPF is
programs+maps, the pure program offload has been around for quite some
time, this patchset adds the map part of the equation.

Maps are allocated on the target device from the start.  There is no
host copy when map is created on the device.  Device maps are represented
by struct bpf_offloaded_map, regardless of type.  Host programs can't
access such maps, access is only possible from a program also loaded
to the same device and/or via the BPF syscall.

Offloaded programs are currently only allowed to perform lookups,
control plane is responsible for populating the maps.

For brevity only infrastructure and basic NFP patches are included.
Target device reporting, netdevsim and tests will follow up as well as
some further optimizations to the NFP code.

v2:
 - leave out the array maps, we will add them trivially later to avoid
   merge conflicts with ongoing spectere&meltdown mitigations.
====================

Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>