Home
last modified time | relevance | path

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

/linux/kernel/bpf/
H A Dmap_in_map.c12 struct bpf_map *inner_map, *inner_map_meta; in bpf_map_meta_alloc() local
16 inner_map = __bpf_map_get(f); in bpf_map_meta_alloc()
17 if (IS_ERR(inner_map)) in bpf_map_meta_alloc()
18 return inner_map; in bpf_map_meta_alloc()
21 if (inner_map->inner_map_meta) in bpf_map_meta_alloc()
24 if (!inner_map->ops->map_meta_equal) in bpf_map_meta_alloc()
29 if (inner_map->ops == &array_map_ops || inner_map->ops == &percpu_array_map_ops) in bpf_map_meta_alloc()
36 inner_map_meta->map_type = inner_map->map_type; in bpf_map_meta_alloc()
37 inner_map_meta->key_size = inner_map->key_size; in bpf_map_meta_alloc()
38 inner_map_meta->value_size = inner_map->value_size; in bpf_map_meta_alloc()
[all …]
H A Darraymap.c1366 struct bpf_map **inner_map = array_map_lookup_elem(map, key); in array_of_map_lookup_elem() local
1368 if (!inner_map) in array_of_map_lookup_elem()
1371 return READ_ONCE(*inner_map); in array_of_map_lookup_elem()
H A Dhashtab.c1834 struct bpf_map **inner_map = value; in __htab_map_lookup_and_delete_batch() local
1837 map_id = map->ops->map_fd_sys_lookup_elem(*inner_map); in __htab_map_lookup_and_delete_batch()
2599 struct bpf_map **inner_map = htab_map_lookup_elem(map, key); in htab_of_map_lookup_elem() local
2601 if (!inner_map) in htab_of_map_lookup_elem()
2604 return READ_ONCE(*inner_map); in htab_of_map_lookup_elem()
/linux/tools/testing/selftests/bpf/progs/
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 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 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 },
113 struct inner_map *inner_map; in BPF_PROG() local
142 inner_map = bpf_map_lookup_elem(&outer_arr, &key); in BPF_PROG()
143 if (inner_map) { in BPF_PROG()
144 value = bpf_map_lookup_elem(inner_map, &key); in BPF_PROG()
[all …]
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 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()
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 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 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);
H A Dsyscall.c49 } inner_map SEC(".maps");
59 [0] = &inner_map,
/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/prog_tests/
H A Dsockmap_listen.c725 struct bpf_map *inner_map, int family, in test_skb_redir_to_connected() argument
731 int sock_map = bpf_map__fd(inner_map); in test_skb_redir_to_connected()
750 struct bpf_map *inner_map, int family, in test_msg_redir_to_connected() argument
755 int sock_map = bpf_map__fd(inner_map); in test_msg_redir_to_connected()
768 struct bpf_map *inner_map, int family, in test_msg_redir_to_connected_with_link() argument
773 int sock_map = bpf_map__fd(inner_map); in test_msg_redir_to_connected_with_link()
845 struct bpf_map *inner_map, int family, in test_skb_redir_to_listening() argument
851 int sock_map = bpf_map__fd(inner_map); in test_skb_redir_to_listening()
870 struct bpf_map *inner_map, int family, in test_msg_redir_to_listening() argument
875 int sock_map = bpf_map__fd(inner_map); in test_msg_redir_to_listening()
[all …]
H A Dlinked_list.c29 TEST(inner_map, 0)
56 TEST(inner_map, push_front)
57 TEST(inner_map, push_back)
58 TEST(inner_map, pop_front)
59 TEST(inner_map, pop_back)
178 clear_fields(skel->maps.inner_map); in test_linked_list_success()
212 clear_fields(skel->maps.inner_map); in test_linked_list_success()
234 clear_fields(skel->maps.inner_map); in test_linked_list_success()
H A Dbloom_filter_map.c129 link = bpf_program__attach(skel->progs.inner_map); in test_inner_map()
/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/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*] \
75 … value *VALUE_SIZE* entries *MAX_ENTRIES* name *NAME* [flags *FLAGS*] [inner_map *MAP*] [offload_…
82 To create maps of type array-of-maps or hash-of-maps, the **inner_map**
/linux/tools/lib/bpf/
H A Dlibbpf.c566 struct bpf_map *inner_map; member
2907 map->inner_map = calloc(1, sizeof(*map->inner_map)); in bpf_object__init_user_btf_map()
2908 if (!map->inner_map) in bpf_object__init_user_btf_map()
2910 map->inner_map->fd = create_placeholder_fd(); in bpf_object__init_user_btf_map()
2911 if (map->inner_map->fd < 0) in bpf_object__init_user_btf_map()
2912 return map->inner_map->fd; in bpf_object__init_user_btf_map()
2913 map->inner_map->sec_idx = sec_idx; in bpf_object__init_user_btf_map()
2914 map->inner_map->name = malloc(strlen(map_name) + sizeof(".inner") + 1); in bpf_object__init_user_btf_map()
2915 if (!map->inner_map->name) in bpf_object__init_user_btf_map()
2917 sprintf(map->inner_map->name, "%s.inner", map_name); in bpf_object__init_user_btf_map()
[all …]
/linux/tools/bpf/bpftool/bash-completion/
H A Dbpftool713 inner_map)
722 inner_map)
733 _bpftool_once_attr 'inner_map'