OSDN Git Service

bpf: sockmap requires STREAM_PARSER add Kconfig entry
authorJohn Fastabend <john.fastabend@gmail.com>
Mon, 28 Aug 2017 14:12:21 +0000 (07:12 -0700)
committerDavid S. Miller <davem@davemloft.net>
Mon, 28 Aug 2017 18:13:22 +0000 (11:13 -0700)
SOCKMAP uses strparser code (compiled with Kconfig option
CONFIG_STREAM_PARSER) to run the parser BPF program. Without this
config option set sockmap wont be compiled. However, at the moment
the only way to pull in the strparser code is to enable KCM.

To resolve this create a BPF specific config option to pull
only the strparser piece in that sockmap needs. This also
allows folks who want to use BPF/syscall/maps but don't need
sockmap to easily opt out.

Signed-off-by: John Fastabend <john.fastabend@gmail.com>
Acked-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/Kconfig

index 7d57ef3..17ca213 100644 (file)
@@ -301,6 +301,18 @@ config BPF_JIT
          /proc/sys/net/core/bpf_jit_harden   (optional)
          /proc/sys/net/core/bpf_jit_kallsyms (optional)
 
+config BPF_STREAM_PARSER
+       bool "enable BPF STREAM_PARSER"
+       depends on BPF_SYSCALL
+       select STREAM_PARSER
+       ---help---
+        Enabling this allows a stream parser to be used with
+        BPF_MAP_TYPE_SOCKMAP.
+
+        BPF_MAP_TYPE_SOCKMAP provides a map type to use with network sockets.
+        It can be used to enforce socket policy, implement socket redirects,
+        etc.
+
 config NET_FLOW_LIMIT
        bool
        depends on RPS