mbox series

[bpf-next,v5,0/6] bpf/verifier: range computation improvements

Message ID 20240506141849.185293-1-cupertino.miranda@oracle.com (mailing list archive)
Headers show
Series bpf/verifier: range computation improvements | expand

Message

Cupertino Miranda May 6, 2024, 2:18 p.m. UTC
Hi everyone,

This is what I hope to be the last version. :)

Regards,
Cupertino

Changes from v1:
 - Reordered patches in the series.
 - Fix refactor to be acurate with original code.
 - Fixed other mentioned small problems.

Changes from v2:
 - Added a patch to replace mark_reg_unknowon for __mark_reg_unknown in
   the context of range computation.
 - Reverted implementation of refactor to v1 which used a simpler
   boolean return value in check function.
 - Further relaxed MUL to allow it to still compute a range when neither
   of its registers is a known value.
 - Simplified tests based on Eduards example.
 - Added messages in selftest commits.

Changes from v3:
 - Improved commit message of patch nr 1.
 - Coding style fixes.
 - Improve XOR and OR tests.
 - Made function calls to pass struct bpf_reg_state pointer instead.
 - Improved final code as a last patch.

Changes from v4:
 - Merged patch nr 7 in 2.

Cc: Yonghong Song <yonghong.song@linux.dev>
Cc: Alexei Starovoitov <alexei.starovoitov@gmail.com>
Cc: David Faust <david.faust@oracle.com>
Cc: Jose Marchesi <jose.marchesi@oracle.com>
Cc: Elena Zannoni <elena.zannoni@oracle.com>
Cc: Eduard Zingerman <eddyz87@gmail.com>
Cc: Andrii Nakryiko <andrii.nakryiko@gmail.com>

Cupertino Miranda (6):
  bpf/verifier: replace calls to mark_reg_unknown.
  bpf/verifier: refactor checks for range computation
  bpf/verifier: improve XOR and OR range computation
  selftests/bpf: XOR and OR range computation tests.
  bpf/verifier: relax MUL range computation check
  selftests/bpf: MUL range computation tests.

 kernel/bpf/verifier.c                         | 106 +++++++-----------
 .../selftests/bpf/progs/verifier_bounds.c     |  63 +++++++++++
 2 files changed, 104 insertions(+), 65 deletions(-)

Comments

patchwork-bot+netdevbpf@kernel.org May 7, 2024, 12:20 a.m. UTC | #1
Hello:

This series was applied to bpf/bpf-next.git (master)
by Alexei Starovoitov <ast@kernel.org>:

On Mon,  6 May 2024 15:18:43 +0100 you wrote:
> Hi everyone,
> 
> This is what I hope to be the last version. :)
> 
> Regards,
> Cupertino
> 
> [...]

Here is the summary with links:
  - [bpf-next,v5,1/6] bpf/verifier: replace calls to mark_reg_unknown.
    https://git.kernel.org/bpf/bpf-next/c/d786957ebd3f
  - [bpf-next,v5,2/6] bpf/verifier: refactor checks for range computation
    https://git.kernel.org/bpf/bpf-next/c/0922c78f592c
  - [bpf-next,v5,3/6] bpf/verifier: improve XOR and OR range computation
    https://git.kernel.org/bpf/bpf-next/c/138cc42c05d1
  - [bpf-next,v5,4/6] selftests/bpf: XOR and OR range computation tests.
    https://git.kernel.org/bpf/bpf-next/c/5ec9a7d13f49
  - [bpf-next,v5,5/6] bpf/verifier: relax MUL range computation check
    https://git.kernel.org/bpf/bpf-next/c/41d047a87106
  - [bpf-next,v5,6/6] selftests/bpf: MUL range computation tests.
    https://git.kernel.org/bpf/bpf-next/c/92956786b4e2

You are awesome, thank you!