mirror of
git://git.yoctoproject.org/linux-yocto.git
synced 2025-08-22 00:42:01 +02:00

Add a tracepoint with __nullable suffix in bpf_testmod, and add cases for it: $ ./test_progs -t "tp_btf_nullable" #406/1 tp_btf_nullable/handle_tp_btf_nullable_bare1:OK #406/2 tp_btf_nullable/handle_tp_btf_nullable_bare2:OK #406 tp_btf_nullable:OK Summary: 1/2 PASSED, 0 SKIPPED, 0 FAILED Signed-off-by: Philo Lu <lulie@linux.alibaba.com> Link: https://lore.kernel.org/r/20240911033719.91468-3-lulie@linux.alibaba.com Signed-off-by: Martin KaFai Lau <martin.lau@kernel.org>
25 lines
650 B
C
25 lines
650 B
C
// SPDX-License-Identifier: GPL-2.0
|
|
|
|
#include "vmlinux.h"
|
|
#include <bpf/bpf_helpers.h>
|
|
#include <bpf/bpf_tracing.h>
|
|
#include "../bpf_testmod/bpf_testmod.h"
|
|
#include "bpf_misc.h"
|
|
|
|
SEC("tp_btf/bpf_testmod_test_nullable_bare")
|
|
__failure __msg("R1 invalid mem access 'trusted_ptr_or_null_'")
|
|
int BPF_PROG(handle_tp_btf_nullable_bare1, struct bpf_testmod_test_read_ctx *nullable_ctx)
|
|
{
|
|
return nullable_ctx->len;
|
|
}
|
|
|
|
SEC("tp_btf/bpf_testmod_test_nullable_bare")
|
|
int BPF_PROG(handle_tp_btf_nullable_bare2, struct bpf_testmod_test_read_ctx *nullable_ctx)
|
|
{
|
|
if (nullable_ctx)
|
|
return nullable_ctx->len;
|
|
return 0;
|
|
}
|
|
|
|
char _license[] SEC("license") = "GPL";
|