Home
last modified time | relevance | path

Searched refs:ctx (Results 1 – 25 of 271) sorted by relevance

1234567891011

/tools/testing/selftests/bpf/progs/
Dtest_sk_lookup.c76 int lookup_pass(struct bpf_sk_lookup *ctx) in lookup_pass() argument
82 int lookup_drop(struct bpf_sk_lookup *ctx) in lookup_drop() argument
88 int reuseport_pass(struct sk_reuseport_md *ctx) in reuseport_pass() argument
94 int reuseport_drop(struct sk_reuseport_md *ctx) in reuseport_drop() argument
101 int redir_port(struct bpf_sk_lookup *ctx) in redir_port() argument
106 if (ctx->local_port != DST_PORT) in redir_port()
113 err = bpf_sk_assign(ctx, sk, 0); in redir_port()
120 int redir_ip4(struct bpf_sk_lookup *ctx) in redir_ip4() argument
125 if (ctx->family != AF_INET) in redir_ip4()
127 if (ctx->local_port != DST_PORT) in redir_ip4()
[all …]
Dsockopt_sk.c30 int _getsockopt(struct bpf_sockopt *ctx) in _getsockopt() argument
32 __u8 *optval_end = ctx->optval_end; in _getsockopt()
33 __u8 *optval = ctx->optval; in _getsockopt()
38 sk = ctx->sk; in _getsockopt()
47 if (bpf_get_netns_cookie(ctx) == 0) in _getsockopt()
50 if (ctx->level == SOL_IP && ctx->optname == IP_TOS) { in _getsockopt()
55 ctx->optlen = 0; /* bypass optval>PAGE_SIZE */ in _getsockopt()
59 if (ctx->level == SOL_SOCKET && ctx->optname == SO_SNDBUF) { in _getsockopt()
67 if (ctx->level == SOL_TCP && ctx->optname == TCP_CONGESTION) { in _getsockopt()
75 if (ctx->level == SOL_TCP && ctx->optname == TCP_ZEROCOPY_RECEIVE) { in _getsockopt()
[all …]
Dbind4_prog.c26 static __inline int bind_to_device(struct bpf_sock_addr *ctx) in bind_to_device() argument
34 if (bpf_setsockopt(ctx, SOL_SOCKET, SO_BINDTODEVICE, in bind_to_device()
37 if (bpf_getsockopt(ctx, SOL_SOCKET, SO_BINDTOIFINDEX, in bind_to_device()
40 if (bpf_setsockopt(ctx, SOL_SOCKET, SO_BINDTODEVICE, in bind_to_device()
43 if (bpf_getsockopt(ctx, SOL_SOCKET, SO_BINDTOIFINDEX, in bind_to_device()
47 if (bpf_setsockopt(ctx, SOL_SOCKET, SO_BINDTODEVICE, in bind_to_device()
50 if (bpf_setsockopt(ctx, SOL_SOCKET, SO_BINDTOIFINDEX, in bind_to_device()
53 if (bpf_setsockopt(ctx, SOL_SOCKET, SO_BINDTODEVICE, in bind_to_device()
60 static __inline int bind_reuseport(struct bpf_sock_addr *ctx) in bind_reuseport() argument
64 if (bpf_setsockopt(ctx, SOL_SOCKET, SO_REUSEPORT, in bind_reuseport()
[all …]
Dbind6_prog.c32 static __inline int bind_to_device(struct bpf_sock_addr *ctx) in bind_to_device() argument
40 if (bpf_setsockopt(ctx, SOL_SOCKET, SO_BINDTODEVICE, in bind_to_device()
43 if (bpf_getsockopt(ctx, SOL_SOCKET, SO_BINDTOIFINDEX, in bind_to_device()
46 if (bpf_setsockopt(ctx, SOL_SOCKET, SO_BINDTODEVICE, in bind_to_device()
49 if (bpf_getsockopt(ctx, SOL_SOCKET, SO_BINDTOIFINDEX, in bind_to_device()
53 if (bpf_setsockopt(ctx, SOL_SOCKET, SO_BINDTODEVICE, in bind_to_device()
56 if (bpf_setsockopt(ctx, SOL_SOCKET, SO_BINDTOIFINDEX, in bind_to_device()
59 if (bpf_setsockopt(ctx, SOL_SOCKET, SO_BINDTODEVICE, in bind_to_device()
66 static __inline int bind_reuseport(struct bpf_sock_addr *ctx) in bind_reuseport() argument
70 if (bpf_setsockopt(ctx, SOL_SOCKET, SO_REUSEPORT, in bind_reuseport()
[all …]
Dconnect_force_port6.c30 int connect6(struct bpf_sock_addr *ctx) in connect6() argument
40 if (bpf_bind(ctx, (struct sockaddr *)&sa, sizeof(sa)) != 0) in connect6()
44 if (ctx->user_port == bpf_htons(60000)) { in connect6()
45 orig = bpf_sk_storage_get(&service_mapping, ctx->sk, 0, in connect6()
50 orig->addr[0] = ctx->user_ip6[0]; in connect6()
51 orig->addr[1] = ctx->user_ip6[1]; in connect6()
52 orig->addr[2] = ctx->user_ip6[2]; in connect6()
53 orig->addr[3] = ctx->user_ip6[3]; in connect6()
54 orig->port = ctx->user_port; in connect6()
56 ctx->user_ip6[0] = 0; in connect6()
[all …]
Dconnect4_prog.c37 int do_bind(struct bpf_sock_addr *ctx) in do_bind() argument
45 if (bpf_bind(ctx, (struct sockaddr *)&sa, sizeof(sa)) != 0) in do_bind()
51 static __inline int verify_cc(struct bpf_sock_addr *ctx, in verify_cc() argument
57 if (bpf_getsockopt(ctx, SOL_TCP, TCP_CONGESTION, &buf, sizeof(buf))) in verify_cc()
70 static __inline int set_cc(struct bpf_sock_addr *ctx) in set_cc() argument
75 if (bpf_setsockopt(ctx, SOL_TCP, TCP_CONGESTION, &reno, sizeof(reno))) in set_cc()
77 if (verify_cc(ctx, reno)) in set_cc()
80 if (bpf_setsockopt(ctx, SOL_TCP, TCP_CONGESTION, &cubic, sizeof(cubic))) in set_cc()
82 if (verify_cc(ctx, cubic)) in set_cc()
88 static __inline int bind_to_device(struct bpf_sock_addr *ctx) in bind_to_device() argument
[all …]
Dsockopt_multi.c10 int _getsockopt_child(struct bpf_sockopt *ctx) in _getsockopt_child() argument
12 __u8 *optval_end = ctx->optval_end; in _getsockopt_child()
13 __u8 *optval = ctx->optval; in _getsockopt_child()
15 if (ctx->level != SOL_IP || ctx->optname != IP_TOS) in _getsockopt_child()
24 ctx->retval = 0; /* Reset system call return value to zero */ in _getsockopt_child()
27 ctx->optlen = 1; in _getsockopt_child()
33 int _getsockopt_parent(struct bpf_sockopt *ctx) in _getsockopt_parent() argument
35 __u8 *optval_end = ctx->optval_end; in _getsockopt_parent()
36 __u8 *optval = ctx->optval; in _getsockopt_parent()
38 if (ctx->level != SOL_IP || ctx->optname != IP_TOS) in _getsockopt_parent()
[all …]
Dtest_bpf_cookie.c18 static void update(void *ctx, int *res) in update() argument
23 *res |= bpf_get_attach_cookie(ctx); in update()
27 int handle_kprobe(struct pt_regs *ctx) in handle_kprobe() argument
29 update(ctx, &kprobe_res); in handle_kprobe()
34 int handle_kretprobe(struct pt_regs *ctx) in handle_kretprobe() argument
36 update(ctx, &kretprobe_res); in handle_kretprobe()
41 int handle_uprobe(struct pt_regs *ctx) in handle_uprobe() argument
43 update(ctx, &uprobe_res); in handle_uprobe()
48 int handle_uretprobe(struct pt_regs *ctx) in handle_uretprobe() argument
50 update(ctx, &uretprobe_res); in handle_uretprobe()
[all …]
Dconnect_force_port4.c31 int connect4(struct bpf_sock_addr *ctx) in connect4() argument
41 if (bpf_bind(ctx, (struct sockaddr *)&sa, sizeof(sa)) != 0) in connect4()
45 if (ctx->user_port == bpf_htons(60000)) { in connect4()
46 orig = bpf_sk_storage_get(&service_mapping, ctx->sk, 0, in connect4()
51 orig->addr = ctx->user_ip4; in connect4()
52 orig->port = ctx->user_port; in connect4()
54 ctx->user_ip4 = bpf_htonl(0x7f000001); in connect4()
55 ctx->user_port = bpf_htons(60123); in connect4()
61 int getsockname4(struct bpf_sock_addr *ctx) in getsockname4() argument
63 if (!get_set_sk_priority(ctx)) in getsockname4()
[all …]
Dsendmsg6_prog.c28 int sendmsg_v6_prog(struct bpf_sock_addr *ctx) in sendmsg_v6_prog() argument
30 if (ctx->type != SOCK_DGRAM) in sendmsg_v6_prog()
33 if (!get_set_sk_priority(ctx)) in sendmsg_v6_prog()
37 if (ctx->msg_src_ip6[3] == bpf_htonl(1) || in sendmsg_v6_prog()
38 ctx->msg_src_ip6[3] == bpf_htonl(0)) { in sendmsg_v6_prog()
39 ctx->msg_src_ip6[0] = bpf_htonl(SRC_REWRITE_IP6_0); in sendmsg_v6_prog()
40 ctx->msg_src_ip6[1] = bpf_htonl(SRC_REWRITE_IP6_1); in sendmsg_v6_prog()
41 ctx->msg_src_ip6[2] = bpf_htonl(SRC_REWRITE_IP6_2); in sendmsg_v6_prog()
42 ctx->msg_src_ip6[3] = bpf_htonl(SRC_REWRITE_IP6_3); in sendmsg_v6_prog()
49 if (ctx->user_ip6[0] == bpf_htonl(0xFACEB00C)) { in sendmsg_v6_prog()
[all …]
Dsockopt_inherit.c38 static __inline struct sockopt_inherit *get_storage(struct bpf_sockopt *ctx) in get_storage() argument
40 if (ctx->optname == CUSTOM_INHERIT1) in get_storage()
41 return bpf_sk_storage_get(&cloned1_map, ctx->sk, 0, in get_storage()
43 else if (ctx->optname == CUSTOM_INHERIT2) in get_storage()
44 return bpf_sk_storage_get(&cloned2_map, ctx->sk, 0, in get_storage()
47 return bpf_sk_storage_get(&listener_only_map, ctx->sk, 0, in get_storage()
52 int _getsockopt(struct bpf_sockopt *ctx) in _getsockopt() argument
54 __u8 *optval_end = ctx->optval_end; in _getsockopt()
56 __u8 *optval = ctx->optval; in _getsockopt()
58 if (ctx->level != SOL_CUSTOM) in _getsockopt()
[all …]
Dtest_check_mtu.c22 int xdp_use_helper_basic(struct xdp_md *ctx) in xdp_use_helper_basic() argument
26 if (bpf_check_mtu(ctx, 0, &mtu_len, 0, 0)) in xdp_use_helper_basic()
33 int xdp_use_helper(struct xdp_md *ctx) in xdp_use_helper() argument
44 if (bpf_check_mtu(ctx, ifindex, &mtu_len, delta, 0)) { in xdp_use_helper()
59 int xdp_exceed_mtu(struct xdp_md *ctx) in xdp_exceed_mtu() argument
61 void *data_end = (void *)(long)ctx->data_end; in xdp_exceed_mtu()
62 void *data = (void *)(long)ctx->data; in xdp_exceed_mtu()
73 err = bpf_check_mtu(ctx, ifindex, &mtu_len, delta, 0); in xdp_exceed_mtu()
85 int xdp_minus_delta(struct xdp_md *ctx) in xdp_minus_delta() argument
88 void *data_end = (void *)(long)ctx->data_end; in xdp_minus_delta()
[all …]
Dsendmsg4_prog.c24 int sendmsg_v4_prog(struct bpf_sock_addr *ctx) in sendmsg_v4_prog() argument
28 if (ctx->type != SOCK_DGRAM) in sendmsg_v4_prog()
31 if (!get_set_sk_priority(ctx)) in sendmsg_v4_prog()
35 if (ctx->msg_src_ip4 == bpf_htonl(SRC1_IP4) || in sendmsg_v4_prog()
36 ctx->msg_src_ip4 == bpf_htonl(SRC2_IP4)) { in sendmsg_v4_prog()
37 ctx->msg_src_ip4 = bpf_htonl(SRC_REWRITE_IP4); in sendmsg_v4_prog()
44 if ((ctx->user_ip4 >> 24) == (bpf_htonl(DST_IP4) >> 24) && in sendmsg_v4_prog()
45 ctx->user_port == bpf_htons(DST_PORT)) { in sendmsg_v4_prog()
46 ctx->user_ip4 = bpf_htonl(DST_REWRITE_IP4); in sendmsg_v4_prog()
47 ctx->user_port = bpf_htons(DST_REWRITE_PORT4); in sendmsg_v4_prog()
Drecvmsg6_prog.c20 int recvmsg6_prog(struct bpf_sock_addr *ctx) in recvmsg6_prog() argument
26 sk = ctx->sk; in recvmsg6_prog()
33 if (ctx->type != SOCK_STREAM && ctx->type != SOCK_DGRAM) in recvmsg6_prog()
36 if (!get_set_sk_priority(ctx)) in recvmsg6_prog()
39 ctx->user_ip6[0] = bpf_htonl(SERV6_IP_0); in recvmsg6_prog()
40 ctx->user_ip6[1] = bpf_htonl(SERV6_IP_1); in recvmsg6_prog()
41 ctx->user_ip6[2] = bpf_htonl(SERV6_IP_2); in recvmsg6_prog()
42 ctx->user_ip6[3] = bpf_htonl(SERV6_IP_3); in recvmsg6_prog()
43 ctx->user_port = bpf_htons(SERV6_PORT); in recvmsg6_prog()
Dbind_perm.c10 static __always_inline int bind_prog(struct bpf_sock_addr *ctx, int family) in bind_prog() argument
14 sk = ctx->sk; in bind_prog()
21 if (ctx->type != SOCK_STREAM) in bind_prog()
27 if (ctx->user_port == bpf_htons(111)) in bind_prog()
34 int bind_v4_prog(struct bpf_sock_addr *ctx) in bind_v4_prog() argument
36 return bind_prog(ctx, AF_INET); in bind_v4_prog()
40 int bind_v6_prog(struct bpf_sock_addr *ctx) in bind_v6_prog() argument
42 return bind_prog(ctx, AF_INET6); in bind_v6_prog()
Dsocket_cookie_prog.c33 int set_cookie(struct bpf_sock_addr *ctx) in set_cookie() argument
37 if (ctx->family != AF_INET6 || ctx->user_family != AF_INET6) in set_cookie()
40 p = bpf_sk_storage_get(&socket_cookies, ctx->sk, 0, in set_cookie()
46 p->cookie_key = bpf_get_socket_cookie(ctx); in set_cookie()
52 int update_cookie_sockops(struct bpf_sock_ops *ctx) in update_cookie_sockops() argument
54 struct bpf_sock *sk = ctx->sk; in update_cookie_sockops()
57 if (ctx->family != AF_INET6) in update_cookie_sockops()
60 if (ctx->op != BPF_SOCK_OPS_TCP_CONNECT_CB) in update_cookie_sockops()
70 if (p->cookie_key != bpf_get_socket_cookie(ctx)) in update_cookie_sockops()
73 p->cookie_value |= (ctx->local_port << 8); in update_cookie_sockops()
Dtest_xdp_meta.c9 #define ctx_ptr(ctx, mem) (void *)(unsigned long)ctx->mem argument
12 int ing_cls(struct __sk_buff *ctx) in ing_cls() argument
17 data_meta = ctx_ptr(ctx, data_meta); in ing_cls()
18 data_end = ctx_ptr(ctx, data_end); in ing_cls()
19 data = ctx_ptr(ctx, data); in ing_cls()
32 int ing_xdp(struct xdp_md *ctx) in ing_xdp() argument
37 ret = bpf_xdp_adjust_meta(ctx, -round_up(ETH_ALEN, 4)); in ing_xdp()
41 data_meta = ctx_ptr(ctx, data_meta); in ing_xdp()
42 data_end = ctx_ptr(ctx, data_end); in ing_xdp()
43 data = ctx_ptr(ctx, data); in ing_xdp()
/tools/testing/selftests/filesystems/epoll/
Depoll_wakeup_test.c43 static void kill_timeout(struct epoll_mtcontext *ctx) in kill_timeout() argument
46 pthread_kill(ctx->main, SIGUSR1); in kill_timeout()
47 pthread_kill(ctx->waiter, SIGUSR1); in kill_timeout()
53 struct epoll_mtcontext *ctx = data; in waiter_entry1a() local
55 if (epoll_wait(ctx->efd[0], &e, 1, -1) > 0) in waiter_entry1a()
56 __sync_fetch_and_add(&ctx->count, 1); in waiter_entry1a()
65 struct epoll_mtcontext *ctx = data; in waiter_entry1ap() local
67 pfd.fd = ctx->efd[0]; in waiter_entry1ap()
70 if (epoll_wait(ctx->efd[0], &e, 1, 0) > 0) in waiter_entry1ap()
71 __sync_fetch_and_add(&ctx->count, 1); in waiter_entry1ap()
[all …]
/tools/perf/tests/
Dexpr.c9 static int test(struct expr_parse_ctx *ctx, const char *e, double val2) in test() argument
13 if (expr__parse(&val, ctx, e, 1)) in test()
25 struct expr_parse_ctx ctx; in test__expr() local
27 expr__ctx_init(&ctx); in test__expr()
28 expr__add_id_val(&ctx, strdup("FOO"), 1); in test__expr()
29 expr__add_id_val(&ctx, strdup("BAR"), 2); in test__expr()
31 ret = test(&ctx, "1+1", 2); in test__expr()
32 ret |= test(&ctx, "FOO+BAR", 3); in test__expr()
33 ret |= test(&ctx, "(BAR/2)%2", 1); in test__expr()
34 ret |= test(&ctx, "1 - -4", 5); in test__expr()
[all …]
/tools/testing/selftests/sgx/
Dsigstruct.c29 static void free_q1q2_ctx(struct q1q2_ctx *ctx) in free_q1q2_ctx() argument
31 BN_CTX_free(ctx->bn_ctx); in free_q1q2_ctx()
32 BN_free(ctx->m); in free_q1q2_ctx()
33 BN_free(ctx->s); in free_q1q2_ctx()
34 BN_free(ctx->q1); in free_q1q2_ctx()
35 BN_free(ctx->qr); in free_q1q2_ctx()
36 BN_free(ctx->q2); in free_q1q2_ctx()
40 struct q1q2_ctx *ctx) in alloc_q1q2_ctx() argument
42 ctx->bn_ctx = BN_CTX_new(); in alloc_q1q2_ctx()
43 ctx->s = BN_bin2bn(s, SGX_MODULUS_SIZE, NULL); in alloc_q1q2_ctx()
[all …]
/tools/testing/selftests/perf_events/
Dsigtrap_threads.c44 } ctx; variable
79 if (!__atomic_fetch_add(&ctx.signal_count, 1, __ATOMIC_RELAXED)) in sigtrap_handler()
80 ctx.first_siginfo = *info; in sigtrap_handler()
81 __atomic_fetch_sub(&ctx.tids_want_signal, syscall(__NR_gettid), __ATOMIC_RELAXED); in sigtrap_handler()
93 __atomic_fetch_add(&ctx.tids_want_signal, tid, __ATOMIC_RELAXED); in test_thread()
94 iter = ctx.iterate_on; /* read */ in test_thread()
96 __atomic_fetch_add(&ctx.tids_want_signal, tid, __ATOMIC_RELAXED); in test_thread()
97 ctx.iterate_on = iter; /* idempotent write */ in test_thread()
113 struct perf_event_attr attr = make_event_attr(false, &ctx.iterate_on); in FIXTURE_SETUP()
117 memset(&ctx, 0, sizeof(ctx)); in FIXTURE_SETUP()
[all …]
/tools/testing/selftests/bpf/prog_tests/
Dsyscall.c18 struct args ctx = { in test_syscall() local
24 .ctx_in = &ctx, in test_syscall()
25 .ctx_size_in = sizeof(ctx), in test_syscall()
39 ASSERT_GT(ctx.map_fd, 0, "ctx.map_fd"); in test_syscall()
40 ASSERT_GT(ctx.prog_fd, 0, "ctx.prog_fd"); in test_syscall()
44 err = bpf_map_lookup_elem(ctx.map_fd, &key, &value); in test_syscall()
49 if (ctx.prog_fd > 0) in test_syscall()
50 close(ctx.prog_fd); in test_syscall()
51 if (ctx.map_fd > 0) in test_syscall()
52 close(ctx.map_fd); in test_syscall()
[all …]
/tools/testing/selftests/bpf/benchs/
Dbench_count.c13 struct count_global_ctx *ctx = &count_global_ctx; in count_global_producer() local
16 atomic_inc(&ctx->hits.value); in count_global_producer()
28 struct count_global_ctx *ctx = &count_global_ctx; in count_global_measure() local
30 res->hits = atomic_swap(&ctx->hits.value, 0); in count_global_measure()
41 struct count_local_ctx *ctx = &count_local_ctx; in count_local_setup() local
43 ctx->hits = calloc(env.consumer_cnt, sizeof(*ctx->hits)); in count_local_setup()
44 if (!ctx->hits) in count_local_setup()
50 struct count_local_ctx *ctx = &count_local_ctx; in count_local_producer() local
54 atomic_inc(&ctx->hits[idx].value); in count_local_producer()
66 struct count_local_ctx *ctx = &count_local_ctx; in count_local_measure() local
[all …]
/tools/lib/bpf/
Dxsk.c86 struct xsk_ctx *ctx; member
415 struct xsk_ctx *ctx = xsk->ctx; in xsk_load_xdp_prog() local
443 BPF_LD_MAP_FD(BPF_REG_1, ctx->xsks_map_fd), in xsk_load_xdp_prog()
455 BPF_LD_MAP_FD(BPF_REG_1, ctx->xsks_map_fd), in xsk_load_xdp_prog()
467 BPF_LD_MAP_FD(BPF_REG_1, ctx->xsks_map_fd), in xsk_load_xdp_prog()
486 BPF_LD_MAP_FD(BPF_REG_1, ctx->xsks_map_fd), in xsk_load_xdp_prog()
507 ctx->prog_fd = prog_fd; in xsk_load_xdp_prog()
514 struct xsk_ctx *ctx = xsk->ctx; in xsk_create_bpf_link() local
519 err = bpf_get_link_xdp_id(ctx->ifindex, &prog_id, xsk->config.xdp_flags); in xsk_create_bpf_link()
535 link_fd = bpf_link_create(ctx->prog_fd, ctx->ifindex, BPF_XDP, &opts); in xsk_create_bpf_link()
[all …]
/tools/perf/util/
Dexpr.c43 static size_t key_hash(const void *key, void *ctx __maybe_unused) in key_hash()
57 void *ctx __maybe_unused) in key_equal()
63 int expr__add_id(struct expr_parse_ctx *ctx, const char *id) in expr__add_id() argument
73 data_ptr->parent = ctx->parent; in expr__add_id()
76 ret = hashmap__set(&ctx->ids, id, data_ptr, in expr__add_id()
86 int expr__add_id_val(struct expr_parse_ctx *ctx, const char *id, double val) in expr__add_id_val() argument
98 ret = hashmap__set(&ctx->ids, id, data_ptr, in expr__add_id_val()
107 int expr__add_ref(struct expr_parse_ctx *ctx, struct metric_ref *ref) in expr__add_ref() argument
143 ret = hashmap__set(&ctx->ids, name, data_ptr, in expr__add_ref()
156 int expr__get_id(struct expr_parse_ctx *ctx, const char *id, in expr__get_id() argument
[all …]

1234567891011