From: Alexei Starovoitov <ast@xxxxxxxxxx> Several improvements: - optimize prog stats - compute stats for sleepable progs - prevent recursion fentry/fexit and sleepable progs - allow map-in-map and per-cpu maps in sleepable progs Alexei Starovoitov (7): bpf: Optimize program stats bpf: Compute program stats for sleepable programs bpf: Add per-program recursion prevention mechanism selftest/bpf: Add a recursion test bpf: Count the number of times recursion was prevented bpf: Allows per-cpu maps and map-in-map in sleepable programs selftests/bpf: Add a test for map-in-map and per-cpu maps in sleepable progs arch/x86/net/bpf_jit_comp.c | 46 ++++++++----- include/linux/bpf.h | 16 ++--- include/linux/filter.h | 12 +++- include/uapi/linux/bpf.h | 1 + kernel/bpf/core.c | 16 +++-- kernel/bpf/hashtab.c | 4 +- kernel/bpf/syscall.c | 16 +++-- kernel/bpf/trampoline.c | 59 +++++++++++++--- kernel/bpf/verifier.c | 9 ++- tools/bpf/bpftool/prog.c | 5 ++ tools/include/uapi/linux/bpf.h | 1 + .../selftests/bpf/prog_tests/fexit_stress.c | 2 +- .../selftests/bpf/prog_tests/recursion.c | 33 +++++++++ .../bpf/prog_tests/trampoline_count.c | 4 +- tools/testing/selftests/bpf/progs/lsm.c | 69 +++++++++++++++++++ tools/testing/selftests/bpf/progs/recursion.c | 46 +++++++++++++ 16 files changed, 282 insertions(+), 57 deletions(-) create mode 100644 tools/testing/selftests/bpf/prog_tests/recursion.c create mode 100644 tools/testing/selftests/bpf/progs/recursion.c -- 2.24.1