bpf: Switch to new kfunc flags infrastructure
authorKumar Kartikeya Dwivedi <memxor@gmail.com>
Thu, 21 Jul 2022 13:42:35 +0000 (15:42 +0200)
committerAlexei Starovoitov <ast@kernel.org>
Fri, 22 Jul 2022 03:59:42 +0000 (20:59 -0700)
commita4703e3184320d6e15e2bc81d2ccf1c8c883f9d1
tree7c085a648e132e5e6d43ac6562f9e9050e3feead
parentef2c6f370a637e6f84c813f31fe0ebb4ced2ed69
bpf: Switch to new kfunc flags infrastructure

Instead of populating multiple sets to indicate some attribute and then
researching the same BTF ID in them, prepare a single unified BTF set
which indicates whether a kfunc is allowed to be called, and also its
attributes if any at the same time. Now, only one call is needed to
perform the lookup for both kfunc availability and its attributes.

Signed-off-by: Kumar Kartikeya Dwivedi <memxor@gmail.com>
Link: https://lore.kernel.org/r/20220721134245.2450-4-memxor@gmail.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
include/linux/bpf.h
include/linux/btf.h
kernel/bpf/btf.c
kernel/bpf/verifier.c
net/bpf/test_run.c
net/ipv4/bpf_tcp_ca.c
net/ipv4/tcp_bbr.c
net/ipv4/tcp_cubic.c
net/ipv4/tcp_dctcp.c
net/netfilter/nf_conntrack_bpf.c
tools/testing/selftests/bpf/bpf_testmod/bpf_testmod.c