File tree Expand file tree Collapse file tree
tools/testing/selftests/bpf Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1111#include "verifier_bounds_deduction_non_const.skel.h"
1212#include "verifier_bounds_mix_sign_unsign.skel.h"
1313#include "verifier_bpf_get_stack.skel.h"
14+ #include "verifier_btf_ctx_access.skel.h"
1415#include "verifier_cfg.skel.h"
1516#include "verifier_cgroup_inv_retcode.skel.h"
1617#include "verifier_cgroup_skb.skel.h"
@@ -89,6 +90,7 @@ void test_verifier_bounds_deduction(void) { RUN(verifier_bounds_deduction);
8990void test_verifier_bounds_deduction_non_const (void ) { RUN (verifier_bounds_deduction_non_const ); }
9091void test_verifier_bounds_mix_sign_unsign (void ) { RUN (verifier_bounds_mix_sign_unsign ); }
9192void test_verifier_bpf_get_stack (void ) { RUN (verifier_bpf_get_stack ); }
93+ void test_verifier_btf_ctx_access (void ) { RUN (verifier_btf_ctx_access ); }
9294void test_verifier_cfg (void ) { RUN (verifier_cfg ); }
9395void test_verifier_cgroup_inv_retcode (void ) { RUN (verifier_cgroup_inv_retcode ); }
9496void test_verifier_cgroup_skb (void ) { RUN (verifier_cgroup_skb ); }
Original file line number Diff line number Diff line change 1+ // SPDX-License-Identifier: GPL-2.0
2+ /* Converted from tools/testing/selftests/bpf/verifier/btf_ctx_access.c */
3+
4+ #include <linux/bpf.h>
5+ #include <bpf/bpf_helpers.h>
6+ #include "bpf_misc.h"
7+
8+ SEC ("fentry/bpf_modify_return_test" )
9+ __description ("btf_ctx_access accept" )
10+ __success __retval (0 )
11+ __naked void btf_ctx_access_accept (void )
12+ {
13+ asm volatile (" \
14+ r2 = *(u32*)(r1 + 8); /* load 2nd argument value (int pointer) */\
15+ r0 = 0; \
16+ exit; \
17+ " ::: __clobber_all );
18+ }
19+
20+ SEC ("fentry/bpf_fentry_test9" )
21+ __description ("btf_ctx_access u32 pointer accept" )
22+ __success __retval (0 )
23+ __naked void ctx_access_u32_pointer_accept (void )
24+ {
25+ asm volatile (" \
26+ r2 = *(u32*)(r1 + 0); /* load 1nd argument value (u32 pointer) */\
27+ r0 = 0; \
28+ exit; \
29+ " ::: __clobber_all );
30+ }
31+
32+ char _license [] SEC ("license" ) = "GPL" ;
Load Diff This file was deleted.
You can’t perform that action at this time.
0 commit comments