[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <5ba36dd3-f9f0-a7c3-e9cf-88bc7c1dce88@iogearbox.net>
Date: Fri, 10 Jan 2020 17:29:50 +0100
From: Daniel Borkmann <daniel@...earbox.net>
To: Alexei Starovoitov <ast@...nel.org>, davem@...emloft.net
Cc: netdev@...r.kernel.org, bpf@...r.kernel.org, kernel-team@...com
Subject: Re: [PATCH v3 bpf-next 0/6] bpf: Introduce global functions
On 1/10/20 7:41 AM, Alexei Starovoitov wrote:
> v2->v3:
> - cleaned up a check spotted by Song.
> - rebased and dropped patch 2 that was trying to improve BTF based on ELF.
> - added one more unit test for scalar return value from global func.
>
> v1->v2:
> - addressed review comments from Song, Andrii, Yonghong
> - fixed memory leak in error path
> - added modified ctx check
> - added more tests in patch 7
>
> v1:
> Introduce static vs global functions and function by function verification.
> This is another step toward dynamic re-linking (or replacement) of global
> functions. See patch 2 for details.
>
> Alexei Starovoitov (6):
> libbpf: Sanitize global functions
> bpf: Introduce function-by-function verification
> selftests/bpf: Add fexit-to-skb test for global funcs
> selftests/bpf: Add a test for a large global function
> selftests/bpf: Modify a test to check global functions
> selftests/bpf: Add unit tests for global functions
>
> include/linux/bpf.h | 7 +-
> include/linux/bpf_verifier.h | 10 +-
> include/uapi/linux/btf.h | 6 +
> kernel/bpf/btf.c | 175 +++++++++---
> kernel/bpf/verifier.c | 252 ++++++++++++++----
> tools/include/uapi/linux/btf.h | 6 +
> tools/lib/bpf/libbpf.c | 35 ++-
> .../bpf/prog_tests/bpf_verif_scale.c | 2 +
> .../selftests/bpf/prog_tests/fexit_bpf2bpf.c | 1 +
> .../bpf/prog_tests/test_global_funcs.c | 82 ++++++
> .../selftests/bpf/progs/fexit_bpf2bpf.c | 15 ++
> tools/testing/selftests/bpf/progs/pyperf.h | 9 +-
> .../selftests/bpf/progs/pyperf_global.c | 5 +
> .../selftests/bpf/progs/test_global_func1.c | 45 ++++
> .../selftests/bpf/progs/test_global_func2.c | 4 +
> .../selftests/bpf/progs/test_global_func3.c | 65 +++++
> .../selftests/bpf/progs/test_global_func4.c | 4 +
> .../selftests/bpf/progs/test_global_func5.c | 31 +++
> .../selftests/bpf/progs/test_global_func6.c | 31 +++
> .../selftests/bpf/progs/test_global_func7.c | 18 ++
> .../selftests/bpf/progs/test_pkt_access.c | 28 ++
> .../selftests/bpf/progs/test_xdp_noinline.c | 4 +-
> 22 files changed, 746 insertions(+), 89 deletions(-)
> create mode 100644 tools/testing/selftests/bpf/prog_tests/test_global_funcs.c
> create mode 100644 tools/testing/selftests/bpf/progs/pyperf_global.c
> create mode 100644 tools/testing/selftests/bpf/progs/test_global_func1.c
> create mode 100644 tools/testing/selftests/bpf/progs/test_global_func2.c
> create mode 100644 tools/testing/selftests/bpf/progs/test_global_func3.c
> create mode 100644 tools/testing/selftests/bpf/progs/test_global_func4.c
> create mode 100644 tools/testing/selftests/bpf/progs/test_global_func5.c
> create mode 100644 tools/testing/selftests/bpf/progs/test_global_func6.c
> create mode 100644 tools/testing/selftests/bpf/progs/test_global_func7.c
>
Applied, thanks!
Powered by blists - more mailing lists