[net-next,0/3,v3] bpf: improve verifier ARG_CONST_SIZE_OR_ZERO semantics

Message ID 20171112224911.2403770-1-yhs@fb.com
Headers show
Series
  • bpf: improve verifier ARG_CONST_SIZE_OR_ZERO semantics
Related show

Message

Yonghong Song Nov. 12, 2017, 10:49 p.m.
This patch set intends to change verifier ARG_CONST_SIZE_OR_ZERO
semantics so that simpler bpf programs can be written with verifier
acceptance. Patch #1 comment provided the detailed examples and
the patch itself implements the new semantics. Patch #2
changes bpf_probe_read helper arg2 type from
ARG_CONST_SIZE to ARG_CONST_SIZE_OR_ZERO. Patch #3 fixed a few
test cases and added some for better coverage.

Changelog:
v2 -> v3:
  Fix comments to make patchwork happy
v1 -> v2:
  Fix typo in commit message pointed by Sergei Shtylyov

Yonghong Song (3):
  bpf: improve verifier ARG_CONST_SIZE_OR_ZERO semantics
  bpf: change helper bpf_probe_read arg2 type to ARG_CONST_SIZE_OR_ZERO
  bpf: fix and add test cases for ARG_CONST_SIZE_OR_ZERO semantics
    change

 kernel/bpf/verifier.c                       |  40 +++++----
 kernel/trace/bpf_trace.c                    |   8 +-
 tools/testing/selftests/bpf/test_verifier.c | 131 ++++++++++++++++++++++++----
 3 files changed, 142 insertions(+), 37 deletions(-)