summaryrefslogtreecommitdiff
path: root/Documentation/early-userspace/git@git.tavy.me:linux.git
diff options
context:
space:
mode:
authorDaniel Wade <danjwade95@gmail.com>2026-03-14 13:15:21 +1100
committerAlexei Starovoitov <ast@kernel.org>2026-03-21 13:14:28 -0700
commit0ad1734cc5598d3ddb6126a8960efe85f0f807d7 (patch)
treee0d5508ea5e5342b229d8ef740f2d85398cafa5d /Documentation/early-userspace/git@git.tavy.me:linux.git
parentc845894ebd6fb43226b3118d6b017942550910c5 (diff)
selftests/bpf: Add tests for maybe_fork_scalars() OR vs AND handling
Add three test cases to verifier_bounds.c to verify that maybe_fork_scalars() correctly tracks register values for BPF_OR operations with constant source operands: 1. or_scalar_fork_rejects_oob: After ARSH 63 + OR 8, the pushed path should have dst = 8. With value_size = 8, accessing map_value + 8 is out of bounds and must be rejected. 2. and_scalar_fork_still_works: Regression test ensuring AND forking continues to work. ARSH 63 + AND 4 produces pushed dst = 0 and current dst = 4, both within value_size = 8. 3. or_scalar_fork_allows_inbounds: After ARSH 63 + OR 4, the pushed path has dst = 4, which is within value_size = 8 and should be accepted. These tests exercise the fix in the previous patch, which makes the pushed path re-execute the ALU instruction so it computes the correct result for BPF_OR. Signed-off-by: Daniel Wade <danjwade95@gmail.com> Reviewed-by: Amery Hung <ameryhung@gmail.com> Acked-by: Eduard Zingerman <eddyz87@gmail.com> Link: https://lore.kernel.org/r/20260314021521.128361-3-danjwade95@gmail.com Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Diffstat (limited to 'Documentation/early-userspace/git@git.tavy.me:linux.git')
0 files changed, 0 insertions, 0 deletions