On Mon, Nov 08, 2021 at 08:46:20PM +0400, Dmitrii Banshchikov wrote: > This patch adds tests that bpf_ktime_get_coarse_ns() and bpf_timer_* and > bpf_spin_lock()/bpf_spin_unlock() helpers are forbidden in tracing > progs as it may result in various locking issues. > > Signed-off-by: Dmitrii Banshchikov <me@xxxxxxxxxxxxx> > --- > tools/testing/selftests/bpf/test_verifier.c | 36 +++- > .../selftests/bpf/verifier/helper_allowed.c | 196 ++++++++++++++++++ > 2 files changed, 231 insertions(+), 1 deletion(-) > create mode 100644 tools/testing/selftests/bpf/verifier/helper_allowed.c > > diff --git a/tools/testing/selftests/bpf/test_verifier.c b/tools/testing/selftests/bpf/test_verifier.c > index 25afe423b3f0..e16eab6fc3a9 100644 > --- a/tools/testing/selftests/bpf/test_verifier.c > +++ b/tools/testing/selftests/bpf/test_verifier.c > @@ -92,6 +92,7 @@ struct bpf_test { > int fixup_map_event_output[MAX_FIXUPS]; > int fixup_map_reuseport_array[MAX_FIXUPS]; > int fixup_map_ringbuf[MAX_FIXUPS]; > + int fixup_map_timer[MAX_FIXUPS]; > /* Expected verifier log output for result REJECT or VERBOSE_ACCEPT. > * Can be a tab-separated sequence of expected strings. An empty string > * means no log verification. > @@ -605,7 +606,7 @@ static int create_cgroup_storage(bool percpu) > * struct bpf_spin_lock l; > * }; > */ > -static const char btf_str_sec[] = "\0bpf_spin_lock\0val\0cnt\0l"; > +static const char btf_str_sec[] = "\0bpf_spin_lock\0val\0cnt\0l\0bpf_timer\0"; There is extra null byte at the end. -- Dmitrii Banshchikov