OSDN Git Service

bpf: support BPF_PROG_QUERY for BPF_FLOW_DISSECTOR attach_type
authorStanislav Fomichev <sdf@google.com>
Thu, 25 Apr 2019 21:37:23 +0000 (14:37 -0700)
committerDaniel Borkmann <daniel@iogearbox.net>
Thu, 25 Apr 2019 21:49:06 +0000 (23:49 +0200)
commit118c8e9ae629d35fa9b3d27a7b9d59298b1b4183
tree7ac43c744fec6cdd282557b4c56d30141dba3161
parentead442a0f9aaecb4df3eb4055d1e2568b4fc0ae6
bpf: support BPF_PROG_QUERY for BPF_FLOW_DISSECTOR attach_type

target_fd is target namespace. If there is a flow dissector BPF program
attached to that namespace, its (single) id is returned.

v5:
* drop net ref right after rcu unlock (Daniel Borkmann)

v4:
* add missing put_net (Jann Horn)

v3:
* add missing inline to skb_flow_dissector_prog_query static def
  (kbuild test robot <lkp@intel.com>)

v2:
* don't sleep in rcu critical section (Jakub Kicinski)
* check input prog_cnt (exit early)

Cc: Jann Horn <jannh@google.com>
Signed-off-by: Stanislav Fomichev <sdf@google.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
include/linux/skbuff.h
kernel/bpf/syscall.c
net/core/flow_dissector.c