Home
last modified time | relevance | path

Searched refs:inner_map (Results 1 – 25 of 26) sorted by relevance

12

/linux/tools/testing/selftests/bpf/progs/
H A Dtimer_mim_reject.c15 struct inner_map { struct
31 __array(values, struct inner_map);
50 struct bpf_map *inner_map, *inner_map2; in BPF_PROG() local
56 inner_map = bpf_map_lookup_elem(&outer_arr, &array_key); in BPF_PROG()
57 if (!inner_map) in BPF_PROG()
63 bpf_map_update_elem(inner_map, &hash_key, &init, 0); in BPF_PROG()
64 val = bpf_map_lookup_elem(inner_map, &hash_key); in BPF_PROG()
122 struct bpf_map *inner_map; in BPF_PROG() local
126 inner_map = bpf_map_lookup_elem(&outer_arr, &array_key); in BPF_PROG()
127 if (!inner_map) in BPF_PROG()
[all …]
H A Dtest_btf_map_in_map.c6 struct inner_map { struct
89 __array(values, struct inner_map);
126 struct inner_map *inner_map; in handle__sys_enter() local
129 inner_map = bpf_map_lookup_elem(&outer_arr, &key); in handle__sys_enter()
130 if (!inner_map) in handle__sys_enter()
133 bpf_map_update_elem(inner_map, &key, &val, 0); in handle__sys_enter()
135 inner_map = bpf_map_lookup_elem(&outer_hash, &key); in handle__sys_enter()
136 if (!inner_map) in handle__sys_enter()
139 bpf_map_update_elem(inner_map, &key, &val, 0); in handle__sys_enter()
141 inner_map = bpf_map_lookup_elem(&outer_arr_dyn, &key); in handle__sys_enter()
[all …]
H A Dlsm.c56 struct inner_map { struct
61 } inner_map SEC(".maps");
68 __array(values, struct inner_map);
70 .values = { [0] = &inner_map },
77 __array(values, struct inner_map);
79 .values = { [0] = &inner_map },
115 struct inner_map *inner_map; in BPF_PROG()
144 inner_map = bpf_map_lookup_elem(&outer_arr, &key); in BPF_PROG()
145 if (inner_map) { in BPF_PROG()
113 struct inner_map *inner_map; BPF_PROG() local
[all...]
H A Daccess_map_in_map.c14 } inner_map SEC(".maps");
24 [0] = &inner_map,
36 [0] = &inner_map,
47 void *inner_map; in acc_map_in_map() local
54 inner_map = bpf_map_lookup_elem(outer_map, &key); in acc_map_in_map()
55 if (inner_map) in acc_map_in_map()
60 inner_map = bpf_map_lookup_elem(outer_map, &key); in acc_map_in_map()
61 if (!inner_map) in acc_map_in_map()
66 bpf_map_update_elem(inner_map, &key, &value, 0); in acc_map_in_map()
H A Dtimer_mim.c15 struct inner_map { struct
30 __array(values, struct inner_map);
68 struct bpf_map *inner_map; in BPF_PROG() local
73 inner_map = bpf_map_lookup_elem(&outer_arr, &array_key); in BPF_PROG()
74 if (!inner_map) in BPF_PROG()
77 bpf_map_update_elem(inner_map, &hash_key, &init, 0); in BPF_PROG()
78 val = bpf_map_lookup_elem(inner_map, &hash_key); in BPF_PROG()
82 bpf_timer_init(&val->timer, inner_map, CLOCK_MONOTONIC); in BPF_PROG()
H A Dbloom_filter_map.c56 int inner_map(void *ctx) in inner_map() function
58 struct bpf_map *inner_map; in inner_map() local
62 inner_map = bpf_map_lookup_elem(&outer_map, &key); in inner_map()
63 if (!inner_map) { in inner_map()
68 data.map = inner_map; in inner_map()
H A Dlocal_storage_bench.c53 void *map, *inner_map; in do_lookup() local
61 inner_map = bpf_map_lookup_elem(map, &elem); in do_lookup()
62 if (!inner_map) in do_lookup()
67 bpf_map_lookup_elem(inner_map, &idx); in do_lookup()
69 bpf_task_storage_get(inner_map, lctx->task, &idx, in do_lookup()
H A Dverifier_map_lookup_refine.c10 struct inner_map { struct
15 } inner_map SEC(".maps");
21 __array(values, struct inner_map);
23 .values = { [0] = &inner_map },
H A Dtest_spin_lock_fail.c358 void *inner_map; in nest_lock_different_inner_value() local
360 inner_map = bpf_map_lookup_elem(&map_of_maps, &inner_key); in nest_lock_different_inner_value()
361 if (!inner_map) in nest_lock_different_inner_value()
363 bpf_for_each_map_elem(inner_map, lock_different_value, &ctx, 0); in nest_lock_different_inner_value()
371 void *inner_map; in callback_inner_map_value_lock_identity() local
373 inner_map = bpf_map_lookup_elem(&map_of_maps, &inner_key); in callback_inner_map_value_lock_identity()
374 if (!inner_map) in callback_inner_map_value_lock_identity()
376 bpf_for_each_map_elem(inner_map, nest_lock_different_inner_value, NULL, 0); in callback_inner_map_value_lock_identity()
H A Djeq_infer_not_null_fail.c25 struct bpf_map *inner_map = map->inner_map_meta; in jeq_infer_not_null_ptr_to_btfid() local
42 : [inner_map] "r"(inner_map), [val] "r"(val) in jeq_infer_not_null_ptr_to_btfid()
H A Dmap_ptr_kern.c344 struct inner_map { struct
349 } inner_map SEC(".maps");
363 .values = { (void *)&inner_map, 0, 0, 0, 0, 0, 0, 0, 0 },
370 struct bpf_array *inner_map; in check_array_of_maps() local
374 inner_map = bpf_map_lookup_elem(array_of_maps, &key); in check_array_of_maps()
375 VERIFY(inner_map != NULL); in check_array_of_maps()
376 VERIFY(inner_map->map.max_entries == INNER_MAX_ENTRIES); in check_array_of_maps()
386 __array(values, struct inner_map);
389 [2] = &inner_map,
397 struct bpf_htab *inner_map; in check_hash_of_maps() local
[all...]
H A Dinner_array_lookup.c6 struct inner_map { struct
17 __array(values, struct inner_map);
H A Dlinked_list.h36 struct array_map inner_map SEC(".maps");
46 [0] = &inner_map,
H A Dsyscall.c49 } inner_map SEC(".maps");
59 [0] = &inner_map,
H A Dlinked_list_fail.c66 CHECK(inner_map, pop_front, &iv->head);
67 CHECK(inner_map, pop_back, &iv->head);
89 CHECK(inner_map, push_front, &iv->head, &f->node2);
90 CHECK(inner_map, push_back, &iv->head, &f->node2);
/linux/samples/bpf/
H A Dtest_map_in_map.bpf.c76 static __always_inline int do_reg_lookup(void *inner_map, u32 port) in do_reg_lookup() argument
80 result = bpf_map_lookup_elem(inner_map, &port); in do_reg_lookup()
84 static __always_inline int do_inline_array_lookup(void *inner_map, u32 port) in do_inline_array_lookup() argument
88 if (inner_map != &port_a) in do_inline_array_lookup()
95 static __always_inline int do_inline_hash_lookup(void *inner_map, u32 port) in do_inline_hash_lookup() argument
99 if (inner_map != &port_h) in do_inline_hash_lookup()
112 void *outer_map, *inner_map; in BPF_KSYSCALL() local
150 inner_map = bpf_map_lookup_elem(outer_map, &port_key); in BPF_KSYSCALL()
151 if (!inner_map) { in BPF_KSYSCALL()
157 ret = do_reg_lookup(inner_map, port_key); in BPF_KSYSCALL()
[all …]
/linux/tools/testing/selftests/bpf/benchs/
H A Dbench_local_storage.c117 struct bpf_map *inner_map; in __setup() local
127 inner_map = bpf_map__inner_map(ctx.array_of_maps); in __setup()
128 create_opts.btf_key_type_id = bpf_map__btf_key_type_id(inner_map); in __setup()
129 create_opts.btf_value_type_id = bpf_map__btf_value_type_id(inner_map); in __setup()
/linux/tools/testing/selftests/bpf/prog_tests/
H A Dsockmap_listen.c726 struct bpf_map *inner_map, int family, in test_skb_redir_to_connected() argument
732 int sock_map = bpf_map__fd(inner_map); in test_skb_redir_to_connected()
751 struct bpf_map *inner_map, int family, in test_msg_redir_to_connected() argument
756 int sock_map = bpf_map__fd(inner_map); in test_msg_redir_to_connected()
769 struct bpf_map *inner_map, int family, in test_msg_redir_to_connected_with_link() argument
774 int sock_map = bpf_map__fd(inner_map); in test_msg_redir_to_connected_with_link()
846 struct bpf_map *inner_map, int family, in test_skb_redir_to_listening() argument
852 int sock_map = bpf_map__fd(inner_map); in test_skb_redir_to_listening()
871 struct bpf_map *inner_map, int family, in test_msg_redir_to_listening() argument
876 int sock_map = bpf_map__fd(inner_map); in test_msg_redir_to_listening()
[all …]
H A Dlinked_list.c30 TEST(inner_map, 0)
57 TEST(inner_map, push_front)
58 TEST(inner_map, push_back)
59 TEST(inner_map, pop_front)
60 TEST(inner_map, pop_back)
H A Dbloom_filter_map.c134 link = bpf_program__attach(skel->progs.inner_map); in test_inner_map()
/linux/Documentation/bpf/
H A Dmap_of_maps.rst70 struct inner_map {
81 __array(values, struct inner_map);
/linux/tools/bpf/bpftool/Documentation/
H A Dbpftool-map.rst30 | **entries** *MAX_ENTRIES* **name** *NAME* [**flags** *FLAGS*] [**inner_map** *MAP*] \
76 bpftool map create *FILE* type *TYPE* key *KEY_SIZE* value *VALUE_SIZE* entries *MAX_ENTRIES* name *NAME* [flags *FLAGS*] [inner_map *MAP*] [offload_dev *NAME*]
83 To create maps of type array-of-maps or hash-of-maps, the **inner_map**
/linux/tools/testing/selftests/bpf/
H A Dtest_bpftool_map.sh
/linux/tools/lib/bpf/
H A Dlibbpf.c594 struct bpf_map *inner_map; member
2998 map->inner_map = calloc(1, sizeof(*map->inner_map)); in bpf_object__init_user_btf_map()
2999 if (!map->inner_map) in bpf_object__init_user_btf_map()
3001 map->inner_map->fd = create_placeholder_fd(); in bpf_object__init_user_btf_map()
3002 if (map->inner_map->fd < 0) in bpf_object__init_user_btf_map()
3003 return map->inner_map->fd; in bpf_object__init_user_btf_map()
3004 map->inner_map->sec_idx = sec_idx; in bpf_object__init_user_btf_map()
3005 map->inner_map->name = malloc(strlen(map_name) + sizeof(".inner") + 1); in bpf_object__init_user_btf_map()
3006 if (!map->inner_map->name) in bpf_object__init_user_btf_map()
3008 sprintf(map->inner_map->name, "%s.inner", map_name); in bpf_object__init_user_btf_map()
[all …]
/linux/kernel/bpf/
H A Darraymap.c1466 struct bpf_map **inner_map = array_map_lookup_elem(map, key); in array_of_map_lookup_elem() local
1468 if (!inner_map) in array_of_map_lookup_elem()
1471 return READ_ONCE(*inner_map); in array_of_map_lookup_elem()

12