Kernel contains highly optimised implementation of traditional string operations. Expose them as kfuncs to allow BPF programs leverage the kernel implementation instead of needing to reimplement the operations. These will be very helpful to bpftrace as it now needs to implement all the string operations in LLVM IR. v1 -> v2: - use bpf_probe_read_kernel_str instead of bpf_probe_read_str in selftests as the latter cannot be used on some arches (s390x) Viktor Malik (2): bpf: Add kfuncs for read-only string operations selftests/bpf: Add tests for string kfuncs kernel/bpf/helpers.c | 66 ++++++ .../selftests/bpf/prog_tests/string_kfuncs.c | 37 +++ .../selftests/bpf/progs/test_string_kfuncs.c | 215 ++++++++++++++++++ 3 files changed, 318 insertions(+) create mode 100644 tools/testing/selftests/bpf/prog_tests/string_kfuncs.c create mode 100644 tools/testing/selftests/bpf/progs/test_string_kfuncs.c -- 2.46.0