mbox series

[v2,bpf-next,0/3] Verify global subprogs lazily

Message ID 20231124035937.403208-1-andrii@kernel.org (mailing list archive)
Headers show
Series Verify global subprogs lazily | expand

Message

Andrii Nakryiko Nov. 24, 2023, 3:59 a.m. UTC
See patch #2 for justification. In few words, current eager verification of
global func prevents BPF CO-RE approaches to be applied to global functions.

Patch #1 is just a nicety to emit global subprog names in verifier logs.

Patch #3 adds selftests validating new lazy semantics.

v1->v2:
  - rebases on latest bpf-next resolving conflicts with bpf_loop fixes;
  - added acks from Eduard and Daniel.

Andrii Nakryiko (3):
  bpf: emit global subprog name in verifier logs
  bpf: validate global subprogs lazily
  selftests/bpf: add lazy global subprog validation tests

 include/linux/bpf.h                           |  2 +
 kernel/bpf/verifier.c                         | 83 +++++++++++++----
 .../selftests/bpf/prog_tests/verifier.c       |  2 +
 .../selftests/bpf/progs/test_global_func12.c  |  4 +-
 .../bpf/progs/verifier_global_subprogs.c      | 92 +++++++++++++++++++
 .../bpf/progs/verifier_subprog_precision.c    |  4 +-
 6 files changed, 166 insertions(+), 21 deletions(-)
 create mode 100644 tools/testing/selftests/bpf/progs/verifier_global_subprogs.c

Comments

patchwork-bot+netdevbpf@kernel.org Nov. 24, 2023, 9:50 a.m. UTC | #1
Hello:

This series was applied to bpf/bpf-next.git (master)
by Daniel Borkmann <daniel@iogearbox.net>:

On Thu, 23 Nov 2023 19:59:34 -0800 you wrote:
> See patch #2 for justification. In few words, current eager verification of
> global func prevents BPF CO-RE approaches to be applied to global functions.
> 
> Patch #1 is just a nicety to emit global subprog names in verifier logs.
> 
> Patch #3 adds selftests validating new lazy semantics.
> 
> [...]

Here is the summary with links:
  - [v2,bpf-next,1/3] bpf: emit global subprog name in verifier logs
    https://git.kernel.org/bpf/bpf-next/c/491dd8edecbc
  - [v2,bpf-next,2/3] bpf: validate global subprogs lazily
    https://git.kernel.org/bpf/bpf-next/c/2afae08c9dcb
  - [v2,bpf-next,3/3] selftests/bpf: add lazy global subprog validation tests
    https://git.kernel.org/bpf/bpf-next/c/e8a339b5235e

You are awesome, thank you!