[PATCH bpf-next 0/5] BPF verifier log improvements

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This patch set fixes ambiguity in BPF verifier log output of SCALAR register
in the parts that emit umin/umax, smin/smax, etc ranges. See patch #4 for
details.

Also, patch #5 fixes an issue with verifier log missing instruction context
(state) output for conditionals that trigger precision marking. See details in
the patch.

First two patches are just improvements to two selftests that are very flaky
locally when run in parallel mode.

Patch #3 changes 'align' selftest to be less strict about exact verifier log
output (which patch #4 changes, breaking lots of align tests as written). Now
test does more of a register substate checks, mostly around expected var_off()
values. This 'align' selftests is one of the more brittle ones and requires
constant adjustment when verifier log output changes, without really catching
any new issues. So hopefully these changes can minimize future support efforts
for this specific set of tests.

Andrii Nakryiko (5):
  selftests/bpf: improve percpu_alloc test robustness
  selftests/bpf: improve missed_kprobe_recursion test robustness
  selftests/bpf: make align selftests more robust
  bpf: disambiguate SCALAR register state output in verifier logs
  bpf: ensure proper register state printing for cond jumps

 kernel/bpf/verifier.c                         |  74 ++++--
 .../testing/selftests/bpf/prog_tests/align.c  | 241 +++++++++---------
 .../testing/selftests/bpf/prog_tests/missed.c |   8 +-
 .../selftests/bpf/prog_tests/percpu_alloc.c   |   3 +
 .../selftests/bpf/progs/exceptions_assert.c   |  18 +-
 .../selftests/bpf/progs/percpu_alloc_array.c  |   7 +
 .../progs/percpu_alloc_cgrp_local_storage.c   |   4 +
 .../selftests/bpf/progs/verifier_ldsx.c       |   2 +-
 8 files changed, 200 insertions(+), 157 deletions(-)

-- 
2.34.1






[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux