bpf: add map_lookup_elem_sys_only for lookups from syscall side
authorDaniel Borkmann <daniel@iogearbox.net>
Mon, 13 May 2019 23:18:55 +0000 (01:18 +0200)
committerAlexei Starovoitov <ast@kernel.org>
Tue, 14 May 2019 17:47:29 +0000 (10:47 -0700)
commitc6110222c6f49ea68169f353565eb865488a8619
tree181de3f33b1e298789b1827b0103d6304f532a86
parent2474c62898c63f8bb122ffda2cd93fdaad55603a
bpf: add map_lookup_elem_sys_only for lookups from syscall side

Add a callback map_lookup_elem_sys_only() that map implementations
could use over map_lookup_elem() from system call side in case the
map implementation needs to handle the latter differently than from
the BPF data path. If map_lookup_elem_sys_only() is set, this will
be preferred pick for map lookups out of user space. This hook is
used in a follow-up fix for LRU map, but once development window
opens, we can convert other map types from map_lookup_elem() (here,
the one called upon BPF_MAP_LOOKUP_ELEM cmd is meant) over to use
the callback to simplify and clean up the latter.

Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Martin KaFai Lau <kafai@fb.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
include/linux/bpf.h
kernel/bpf/syscall.c