]> git.baikalelectronics.ru Git - kernel.git/commit
bpf: refactor bpf_prog_get and type check into helper
authorDaniel Borkmann <daniel@iogearbox.net>
Thu, 30 Jun 2016 15:24:44 +0000 (17:24 +0200)
committerDavid S. Miller <davem@davemloft.net>
Fri, 1 Jul 2016 20:00:47 +0000 (16:00 -0400)
commit582633430d90cf61853a54bd35bac95c34287ba6
tree31d2c41c7af6991401c3aff11e7ade3317b4a614
parent182c59fcf808f878719cef583e932cb4e8db04b1
bpf: refactor bpf_prog_get and type check into helper

Since bpf_prog_get() and program type check is used in a couple of places,
refactor this into a small helper function that we can make use of. Since
the non RO prog->aux part is not used in performance critical paths and a
program destruction via RCU is rather very unlikley when doing the put, we
shouldn't have an issue just doing the bpf_prog_get() + prog->type != type
check, but actually not taking the ref at all (due to being in fdget() /
fdput() section of the bpf fd) is even cleaner and makes the diff smaller
as well, so just go for that. Callsites are changed to make use of the new
helper where possible.

Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/bpf.h
kernel/bpf/syscall.c
net/core/filter.c
net/kcm/kcmsock.c
net/packet/af_packet.c
net/sched/act_bpf.c
net/sched/cls_bpf.c