bpf: bpf_(prog|map|attach)_type_(from|to)_str helpers
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest10 patches 10 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/10 | bpf: introduce __MAX_BPF_PROG_TYPE and __MAX_BPF_MAP_TYPE enum valuesinclude/ | +6 | 1 reply | |
| 2/10 | tools/bpf: sync bpf.h to tools/tools/ | +6 | 0 replies | |
| 3/10 | tools/bpf: handle __MAX_BPF_(PROG|MAP)_TYPE in switch statementstools/ tools/ | +3 | 1 reply | |
| 4/10 | tools/bpf: add libbpf_prog_type_(from|to)_str helperstools/ tools/ tools/ | +61 | 8 replies | |
| 5/10 | tools/bpf: add libbpf_map_type_(from|to)_str helperstools/ tools/ tools/ | +57 | 0 replies | |
| 6/10 | tools/bpf: add libbpf_attach_type_(from|to)_strtools/ tools/ tools/ | +57 | 0 replies | |
| 7/10 | selftests/bpf: extend test_section_names with type_(from|to)_strtools/ | +147 | 0 replies | |
| 8/10 | selftests/bpf: rename test_section_names to test_section_and_type_namestools/ tools/ tools/ | +379 | 0 replies | |
| 9/10 | tools/bpftool: use libbpf_(prog|map)_type_to_str helperstools/ tools/ tools/ +1 more | +59 | 0 replies | |
| 10/10 | tools/bpftool: use libbpf_attach_type_to_str helpertools/ tools/ | +45 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [PATCH bpf-next 00/10] bpf: bpf_(prog|map|attach)_type_(from|to)_str helpers
Standardize commonly used bpf enum names by introducing helper methods to libbpf.
When applications require enum to string mapping the related code is copy-pasted from bpftool. It hardens maintenance, e.g. when new enum values are added.
Patches 0001-0003 introduce __MAX_BPF_PROG_TYPE and __MAX_BPF_MAP_TYPE enum type.
Patches 0004-0006 introduce helpers methods libbpf_str_from_(prog|map|attach)_type and libbpf_(prog|map|attach)_type_from_str.
Patches 0007-0008 extend and rename test_section_names test. Patches 0009-0010 introduce the helpers to bpftool.
An alternative for adding __MAX_BPF_(PROG|MAP)_TYPE is using an erroneous result of bpf_(prog|map|attach)_type_(from|to)_str as an indicator of loop bound. The disadvantages are: tests won't fail when a string name is not provided for a new enum value; whoever wants to loop over enum values should be aware about this side feature of newly introduced helpers.
Julia Kartseva (10):
bpf: introduce __MAX_BPF_PROG_TYPE and __MAX_BPF_MAP_TYPE enum values tools/bpf: sync bpf.h to tools/
tools/bpf: handle __MAX_BPF_(PROG|MAP)_TYPE in switch statements tools/bpf: add libbpf_prog_type_(from|to)_str helpers tools/bpf: add libbpf_map_type_(from|to)_str helpers tools/bpf: add libbpf_attach_type_(from|to)_str selftests/bpf: extend test_section_names with type_(from|to)_str selftests/bpf: rename test_section_names to
test_section_and_type_names
tools/bpftool: use libbpf_(prog|map)_type_to_str helpers tools/bpftool: use libbpf_attach_type_to_str helper
include/uapi/linux/bpf.h | 6 + tools/bpf/bpftool/cgroup.c | 60 +-- tools/bpf/bpftool/feature.c | 47 ++- tools/bpf/bpftool/main.h | 33 -- tools/bpf/bpftool/map.c | 80 +--- tools/bpf/bpftool/prog.c | 31 +- tools/include/uapi/linux/bpf.h | 6 + tools/lib/bpf/libbpf.c | 153 +++++++ tools/lib/bpf/libbpf.h | 17 + tools/lib/bpf/libbpf.map | 6 + tools/lib/bpf/libbpf_probes.c | 2 + tools/testing/selftests/bpf/Makefile | 2 +- .../bpf/test_section_and_type_names.c | 378 ++++++++++++++++++ .../selftests/bpf/test_section_names.c | 233 ----------- 14 files changed, 673 insertions(+), 381 deletions(-) create mode 100644 tools/testing/selftests/bpf/test_section_and_type_names.c delete mode 100644 tools/testing/selftests/bpf/test_section_names.c
Signature · 1 line
2.17.1